首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

静态网站生成器推荐:构建高性能网站的利器

简单易上手:Docusaurus 的设计目标是让用户能够在最短时间内快速搭建起自己的网站,它处理了大部分网站构建过程,使您可以专注于项目本身。...RSS 订阅源 使用 Pygments 进行代码语法高亮显示 导入现有 WordPress、Dotclear 或 RSS 订阅源中的内容 基于缓存和选择性输出写入而快速完成重建 可通过丰富插件生态系统进行扩展...可以连接任何 CMS 或数据源,包括 WordPress、Contentful 等,并使用 GraphQL 在页面和组件中访问数据。...符合未来网络发展趋势:JavaScript + API + Markup (Jamstack)。 支持全球 CDN 托管,不需要数据库且可以处理成千上万次请求而不会崩溃或产生昂贵的服务器费用。...用户可以创建文章和其他页面内容,并通过各种内置主题和选项来设置自己的网站风格。

70320

动手练一练,使用 React 和 Next.js 做一个简单的博客网站(下)

一、使用服务端渲染(Server-side Rendering) 服务端渲染(SSR)发生在每次页面请求时,其相关内容逻辑比如 NodeJs 的数据请求都交由服务端处理完成后,再将内容呈现给访问的用户,...在《动手练一练,使用 React 和 Next.js 做一个简单的博客网站(中)》这篇文章里,我们使用了getStaticProps() 这个方法在项目编译时(build)处理生成 MD 动态路由相关的逻辑...你可能注意到为此组件,我单独引用了一个 CSS 文件,具体源码,你可以在文末点击阅读原文链接,在本项目的完整源码中找到对应的CSS链接。...四、生成静态HTML页面 Next.js 允许你将现有的站点生成静态的 HTML 页面(除了需要服务端渲染的界面),如果你为页面定义了 getServerSideProps() 服务端渲染相关的函数,导出将会失败...添加 SSR 功能 尝试从其他内容源获取博客文章内容(服务端API数据接口、wordpress等) 六、相关阅读 《动手练一练,使用 React 和 Next.js 做一个简单的博客网站(上)》 《动手练一练

1.6K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Web 应用开发进化论

    有了服务器端的逻辑,开发人员就可以处理来自用户的读写请求。如果用户想要创建博客文章(写入操作),用户必须在浏览器中编写博客文章并单击“保存”按钮将内容发送到运行在 Web 服务器上的服务端逻辑。...但是,对于 Web 2.0 中的动态内容,发送给客户端的 HTML 不再是具有静态内容的静态 HTML 文件。相反,它会从服务器的数据库中插入动态内容: React 中的 JSX)负责渲染内容(数据)。 在处理客户端渲染的应用程序时,基本上有两次请求往返:一次是用于 JavaScript 应用程序,另一次用于请求一些动态数据。...在浏览器中渲染完所有内容后,用户就开始与应用程序交互 — 例如创建新的博客文章。JSON 是从客户端向服务器发送数据的首选格式。服务器通过读取或写入数据库来处理来自客户端的所有请求。...但是,你在 Next.js 中实现的所有内容都将在服务器端渲染。在 Next.js 中,你使用 React 实现每个页面(例如 /about、/home)。

    4.2K10

    使用 WordPress 做纯后端和管理界面,实现前后端分离

    为了加速,PHP 每次读取接口的内容之后,把内容存储到 Memcached 中,第二次直接从内存中获取,所以速度非常的快。 WordPress 作为纯后端的详细步骤 1....「WordPress果酱」的前端是使用 PHP+Memcached 写的一个内容缓存程序,该程序抓取 WordPress 的 Rest API 接口里面的内容,并使用 Memcached 缓存到内存,然后写个...并且前台的内容只是一个 Memcached 缓存,结合阿里云 OSS做了静态资源的 CDN,可以扛非常大非常大的流量。 3....管理方便:「WordPress果酱」管理后台是搭建在另外一台服务器的 WordPress 多站点上,这样我所有的站点都可以在一个 WordPress 多站点上进行管理和内容更新,管理的工作就降低了非常多...完全的前后端分离 这样做的好处就是完全的前后端分离,页面的渲染都可以交给前端或者中台去处理,后端只需要去处理业务逻辑就好了,当然博客比较简单没有什么复杂的业务逻辑。

    2.5K20

    Next.js 简明教程

    Hexo等方案,页面渲染完全静态化(落地为文件),但是但凡有点动态化的需求,基本无法实现。 其中Next.js可以说是前端同构中的开山,翘楚级框架,依赖React渲染组件。...SSR 钩子以及SSG 大部分的应用内容,都不是纯静态的,我们需要数据查询才能渲染那个页面,而这些就需要同构钩子函数来满足,有了这些钩子函数,我们才可以在不同需求下作出极佳体验的web应用。...但是正如上文说的,一般应用页面都会需要动态的内容,因此自动静态优化局限性很大。...静态缓存目前没办法很灵活的更新!!,例如博客内容在build或者fallback生效之后发生更改,目前没办法很方便的替换缓存。.../pages/_document.tsx来自定义页面的Document,可以配置页面html,head属性,或者使用静态getInitialProps方法中renderPage方法来包括整个react

    3K20

    第二十一篇:从 React-Router 切入,系统学习前端路由解决方案

    Link; 这 3 个组件也就代表了 React-Router 中的 3 个核心角色: 1. 路由器,比如 BrowserRouter 和 HashRouter; 2....以上便是 3 个角色“打配合”的过程。这其中,最需要你注意的是路由器这个角色,React Router 曾在说明文档中官宣它是“React Router 应用程序的核心”。...后来,改变发生了-Ajax 出现了,它允许人们在不刷新页面的情况下发起请求;与之共生的,还有“不刷新页面即可更新页面内容”这种需求。在这样的背景下,出现了SPA(单页面应用)。...SPA 极大地提升了用户体验,它允许页面在不刷新的情况下更新页面内容,使内容的切换更加流畅。...SPA 其实并不知道当前的页面“进展到了哪一步”,可能你在一个站点下经过了反复的“前进”才终于唤出了某一块内容,但是此时只要刷新一下页面,一切就会被清零,你必须重复之前的操作才可以重新对内容进行定位-SPA

    50010

    React 必学SSR框架——next.js

    Hexo等方案,页面渲染完全静态化(落地为文件),但是但凡有点动态化的需求,基本无法实现。 其中Next.js可以说是前端同构中的开山,翘楚级框架,依赖React渲染组件。...SSR 钩子以及SSG 大部分的应用内容,都不是纯静态的,我们需要数据查询才能渲染那个页面,而这些就需要同构钩子函数来满足,有了这些钩子函数,我们才可以在不同需求下作出极佳体验的web应用。...但是正如上文说的,一般应用页面都会需要动态的内容,因此自动静态优化局限性很大。.../pages/_document.tsx来自定义页面的Document,可以配置页面html,head属性,或者使用静态getInitialProps方法中renderPage方法来包括整个react...上述app和document中使用getServerSideProps或者getInitialProps方法让整个应用都无法自动静态优化 上述app和document中在浏览器中不执行,包括react的

    7.7K20

    新一波JavaScript Web框架

    在与数据库交互的语言生态系统中,已经有了基于服务器的模板框架。通过这些框架,我们可以轻松地从静态页面开始,然后扩展到动态页面。 Web 的发展一日千里,我们想要更多的互动体验。...受 PHP 的启发,Next 开始简化创建静态页面推送到 CDN 的过程。它还解决了在 React 应用程序中使用 SSR 的棘手问题。...与一些元框架相比,路由器停留在服务器上,而不是让客户端的路由器在第一次加载后接管。在 Javascript 生态系统中,这是对 Node 之后不久的基于服务器的模板制作的一种倒退。...而不是通过连接事件处理程序来进行必要的获取请求。你渲染表单,将数据提交给在服务器上处理它们的动作函数(通常在同一个文件中)。受到 PHP 的启发。...Remix 还提供了许多 API 和模式,用于处理诸如乐观的 UI 更新、静态条件的处理以及优雅的退化之类的事情,这些都是你希望一个专注于终端用户体验的深思熟虑的框架所提供的。

    60930

    XSS平台模块拓展 | 内附42个js脚本源码

    06.WordPress的证书盗窃 这个有效载荷是对Wordpress XSS的一种利用。它完全接管注入页面并显示完全“合法”登录页面的方式非常有趣。...09.表单窃取 这个脚本窃取了表单中设置的所有值,并通过图像src发送出去。它改变了标签以添加onbeforeunload事件处理程序,并在用户离开页面之前处理信息泄漏。...10.端口扫描 API 一个小的portscanner代码,在加载远程资源时利用javascript引擎的行为。此代码将被集成到一个更强大的框架中。...14.WebApp缓存损坏 一个单独的Javascript行来更改(或创建)HTM5“清单”属性。新值指向一个恶意文件,该文件将注入的页面标识为静态页面,而不会再次加载。...第一个iFrame获取CSRF保护的页面,在第一个表单的“token”参数中窃取标记值,并创建第二个iFrame,并与相应的标记进行连接。

    12.5K80

    WordPress缓存插件WP Fastest Cache插件使用教程

    但是,使用缓存系统,页面会呈现一次,然后存储为静态 HTML 文件,从而减少每个新访问者的加载时间。   简而言之,缓存是将站点的某些资产存储在本地 PC 或浏览器等设备上的能力,以便将来轻松访问。...在 WordPress 的情况下,一般来说,由于您的网站上有很多文件和动态内容,缓存插件会生成您网站的静态 HTML 版本并将其存储以备将来使用。...当用户再次访问页面时,他们将获得静态站点,从而减少页面的加载时间。它还有助于减少服务器必须重新处理和重新呈现站点的压力。   ...6、CDN 设置   CDN 选项卡用于配置缓存以与内容交付网络一起使用。CDN 的首要任务是减少延迟,换句话说,就是减少加载网站所需的时间。通常,延迟是由两个因素引起的:路由器和距离。...API令牌   将复制的API令牌添加到WP Fastest Cache插件 CDN 选项中的“CDN by Cloudflare”。

    6.9K30

    2019-Web开发技术指南和趋势

    以下内容来自我特别喜欢的一个Youtube频道: Traversy Media 这是一个2019年你成为前端,后端或全栈开发者的进阶指南: 你不需要学习所有的技术成为一个web开发者 这个指南只是通过简单分类列出了技术选项...文件上传(Filezilla, Cyberduck) 静态页面托管(Netlify, Github Pages) 1.4 SASS预处理器 ?...学习一个前端框架在目前前端开发中是必须的. 在大公司开发中非常流行 更多的交互 & 有趣的UI组件 组件化 & 模块化前端代码 对团队有利 2.4 状态管理 ?...变量, 函数等类型 类 其他ES6的特性 在Angular中被使用到, 同时也可以在React和Vue中被使用 4.5 无服务架构 ?...以上就是2019 - Web开发技术指南和趋势的全部内容, 要想知道更多细节, 请看Youtube视频: Web Development in 2019 作者:李棠辉 链接:https://segmentfault.com

    3.3K20

    JavaScript Web 框架的“新浪潮”

    让我们回首来时路,再看看未来的趋势。这次,我们将专注于大型项目中的问题,这些问题激发了其他方法和思维方式。 网页简史 Web 最初由静态文档链接在一起组成。...在与数据库交互的语言生态系统中,已经有了基于服务器的模板框架。通过这些框架,我们可以轻松地从静态页面开始,然后扩展到动态页面。 Web 的发展一日千里,我们想要更多的互动体验。...受 PHP 的启发,Next 开始简化创建静态页面推送到 CDN 的过程。它还解决了在 React 应用程序中使用 SSR 的棘手问题。...与一些元框架相比,路由器停留在服务器上,而不是让客户端的路由器在第一次加载后接管。在 Javascript 生态系统中,这是对 Node.js 之后不久的基于服务器的模板制作的一种倒退。...Remix 还提供了许多 API 和模式,用于处理诸如乐观的 UI 更新、静态条件的处理以及优雅的退化之类的事情,这些都是你希望一个专注于终端用户体验的深思熟虑的框架所提供的。

    75430

    JavaScript Web 框架的“新浪潮”

    让我们回首来时路,再看看未来的趋势。这次,我们将专注于大型项目中的问题,这些问题激发了其他方法和思维方式。 网页简史 Web 最初由静态文档链接在一起组成。...在与数据库交互的语言生态系统中,已经有了基于服务器的模板框架。通过这些框架,我们可以轻松地从静态页面开始,然后扩展到动态页面。 Web 的发展一日千里,我们想要更多的互动体验。...受 PHP 的启发,Next 开始简化创建静态页面推送到 CDN 的过程。它还解决了在 React 应用程序中使用 SSR 的棘手问题。...与一些元框架相比,路由器停留在服务器上,而不是让客户端的路由器在第一次加载后接管。在 Javascript 生态系统中,这是对 Node.js 之后不久的基于服务器的模板制作的一种倒退。...Remix 还提供了许多 API 和模式,用于处理诸如乐观的 UI 更新、静态条件的处理以及优雅的退化之类的事情,这些都是你希望一个专注于终端用户体验的深思熟虑的框架所提供的。

    79920

    JavaScript Web 框架的“新浪潮”

    让我们回首来时路,再看看未来的趋势。这次,我们将专注于大型项目中的问题,这些问题激发了其他方法和思维方式。 网页简史 Web 最初由静态文档链接在一起组成。...在与数据库交互的语言生态系统中,已经有了基于服务器的模板框架。通过这些框架,我们可以轻松地从静态页面开始,然后扩展到动态页面。 Web 的发展一日千里,我们想要更多的互动体验。...受 PHP 的启发,Next 开始简化创建静态页面推送到 CDN 的过程。它还解决了在 React 应用程序中使用 SSR 的棘手问题。...与一些元框架相比,路由器停留在服务器上,而不是让客户端的路由器在第一次加载后接管。在 Javascript 生态系统中,这是对 Node.js 之后不久的基于服务器的模板制作的一种倒退。...Remix 还提供了许多 API 和模式,用于处理诸如乐观的 UI 更新、静态条件的处理以及优雅的退化之类的事情,这些都是你希望一个专注于终端用户体验的深思熟虑的框架所提供的。

    62030

    Web 杂记 | 为什么我称这个 Web 时代是静态页面的文艺复兴?

    我尝试着在 Google Search Engine 中体检了一把,性能得分只有 36 (后来的静态页面 V5 能到 96 分,满分 100)。...那我我想说,既然已经花费了这么多心思去操劳,那为什么不一开始在技术选型的时候就将其放弃呢?既然一开始就要落回静态页面 / 动态页面,那为什么还要不断尝试不可能的 SPA 呢?...这也是我 V5 博客的初心,不要把本来简单的事情变得复杂,不要因为热爱就犯傻,V5 已经落回静态页面了,采用的技术栈是 Hugo + Stach Theme,没什么花里胡哨的,两小时建站,督促自己把注意力集中在写博客本身上...聊聊静态页面框架 如果经历过 WordPress 时代,相信大家都听过这么一句都市传说: 世界上 80% 的页面都是由 WordPress 搭建的 我其实很赞同这句话,WordPress 是一个优秀的...可是近来,静态页面框架以肉眼可见的速度增长,从开始的 Jekyll 到 Hexo,再到 Hugo,越来越多的站点开始 ServerLess,静态页面又开始流行了起来。

    89840

    为新的Facebook.com重建我们的技术栈

    相反,我们现在用一种熟悉的语法来编写样式,它的灵感来自于React Native风格的API。我们保证样式以稳定的顺序应用,而且不支持CSS后裔选择器。...中使用SVG,实现快速、单一渲染的性能 为了防止图标在其他内容之后出现闪烁,我们使用 React 将 SVG 内联到 HTML 中,而不是将 SVG 以img的方式显示。...我们将初始加载所需的JavaScript分成三层,使用一个声明式的、可静态分析的API。 第1层是显示上层内容的首刷所需的基本布局,包括初始加载状态的UI骨架。 ?...(data-driven)的依赖项 那么在整个页面加载过程中,不是静态的代码分支怎么办?...(来自网上的解释)) 在最初加载Facebook.com时,有些内容可能会被隐藏或呈现在视口之外。例如,大多数屏幕上可以容纳一到两个News Feed帖子,但我们不知道事先会容纳多少个。

    2K20

    React-BrowserRouter与HashRouter

    BrowserRouter的概述BrowserRouter是React Router库提供的一种路由器组件,它使用HTML5 History API来管理URL和导航。...在导航栏中,我们使用组件创建链接,指向不同的路由。然后,我们使用组件定义了对应的路由和组件。...HashRouter的概述HashRouter是React Router库提供的另一种路由器组件,它使用URL的哈希部分(#)来管理URL和导航。...在导航栏中,我们使用组件创建链接,指向不同的路由。然后,我们使用组件定义了对应的路由和组件。...它适用于部署在Web服务器上,支持动态路由和服务端渲染。HashRouter使用URL的哈希部分(如/#/about)来表示路由。它适用于静态站点、无服务器环境和本地文件系统。

    1.5K20

    用 Gatsby 创建一个博客

    它通过在构建时通过服务器端渲染将动态的 react 组件呈现为静态 HTML 内容。...对于这个特定的博客文章,我们想要一个单页面应用的感觉(没有页面重载),以及在 head 标签中动态更改 title标签的能力。...接下来:以编程方式创建必要的静态页面(并将模板注入)与 Gatsby 的 Node API,让我们开始吧。 此时需要注意的一点是,GraphQL 查询是在构建时进行的。...创建静态页面 Gatsby 公开了一个强大的Node API,它允许创建动态页面这样的功能(博客文章页!),扩展 babel 或 webpack 配置,修改所创建的节点或页面等。...实际的 React 组件是相当琐碎的,需要注意一点,当链接到内部内容时,你应该经常使用 gatsby-link。 如果页面没有通过这个实用工具进行路由,Gatsby 就无法工作。

    2.5K30

    新一波 JavaScript 框架

    许多并非来自大型科技公司的草根替代品获得了广泛的认同。 Vue 当人们在评估迁移到Angular 2或React时,Vue填补了入门门槛低的空白。 你不必在复杂的webpack配置上大费周章。...互相学习 关于这些框架中的每一个,都有很多东西可以说。每个人都根据他们的基本模式和偏好做出了不同的权衡。 在现实中,进化往往来自于人们的随心所欲。...与一些元框架相比,路由器停留在服务器上,而不是让客户端的路由器在第一次加载后接管。 在Javascript生态系统中,这是对Node之后不久的基于服务器的模板制作的一种回溯。...渲染表单,将数据提交给在服务器上处理它们的action functions(通常在同一个文件中)。受到PHP的启发。...Remix还提供了许多API和模式来处理诸如乐观的UI更新、处理竞争条件和优雅的退化,这些都是你希望一个专注于终端用户体验的深思熟虑的框架所提供的。 hybrid 未来 不要与Quic协议相混淆。

    97110

    Web 框架 Astro 2.0 发布,在静态和动态渲染之外提供了混合渲染能力

    Astro Web 框架旨在普及一种叫作“组件岛”的前端架构,这也是 Astro 推出混合渲染的动机: 在将近一年的时间里,Astro 都只允许用户在静态(SSG)和服务器(SSR)渲染之间二选一。...提高热度页面的渲染性能; 2. 提高大型站点的构建性能; 3. 向已有的静态站点中加入 API。...在之前的版本中,使用 Astro 的开发人员必须在静态渲染(针对静态的、内容主导的网站)或服务器端渲染之间做出选择。...有了混合渲染,开发人员可以在构建时预渲染特定的页面或服务器端点,无需放弃已部署的服务器。 大型网站通常有适合使用预渲染技术生成内容的部分,也有需要在请求时生成内容的部分。...对于完全静态的页面,根本不发送 JavaScript。Astro 为此提出了“组件岛”架构。Web 页面被划分为静态 HTML 内容,其中穿插着称为 Astro 岛的交互式 UI 组件。

    1.4K10
    领券