JAMstack 作为初学者
我最近建立了自己的网站和博客。这是我第一次从零开始做一个正式的网页开发项目,从下面的搜索记录来看,我想大家都会同意我当时基本上什么都不懂(毕竟人总得有个起点吧?)。
基本上,我知道像 WordPress 和 Squarespace 这样的大型服务器端内容管理系统,它们处理从 UI 到后端代码的所有内容,我也知道 LAMPstack(只是不知道名字)(稍后会详细介绍)。我不知道的是 JAMstack——而 JAMstack 正是我所寻找的。
那么,它是什么?
JAMstack 是构建快速、安全、静态网站的绝佳方式。如果您从未听说过 JAMstack,以下是它的详细信息:
(请记住,并非每个 JAMstack 网站都具备 JAM 的所有元素 - 它们共同的核心特性是它们都是无服务器的)
J 代表 JavaScript
JavaScript 负责将所有数据提取到您的网站(以及在客户端进行的任何其他动态编程)。JavaScript 也可以是任何您想要的风格!React?Vue.js?……Vanilla JS?
A 代表 API
此 API 是您访问数据的方式。通常存储在您服务器上的数据现在被抽象为 API。大多数情况下,您的数据会存储在第三方服务(称为无头 CMS,例如 Contentful、Directus、Kentico Cloud 等)上。
M 代表标记
标记(Markup,非 Markdown)有两种常见表现形式:HTML 和 XML。你可能会问:“不是所有网站都有标记吗?为什么标记在 JAMstack 中如此重要?” 原因如下:与动态网站不同,动态网站会为每个请求构建一个全新的 HTML 页面(这需要查询数据库,并将结果与标记和插件相结合),而 JAMstack 页面在部署时使用静态站点生成器(Jekyll、Gatsby、Hugo)预先构建。这意味着它们在请求时能够以最小的延迟时间提供服务。这不仅使它们速度更快,而且由于无需数据库查询,也使它们更加安全。
为什么要使用它?
有很多文章讨论了 JAMstack 的优点,最终可以归结为 4 点:使用这种架构构建的网站更快、更安全、扩展性更好并且模块化——从而带来更好的开发体验。
对我来说,我选择 JAMstack 是因为我想要一种简单的方法来编辑网站内容,同时尽可能保证我的网站安全和简单。
如何使用 JAMstack 创建网站?
在我看来,用 JAMstack 搭建网站比 LAMPstack(整个服务器端)更适合新手。我只花了几天时间就把网站部署到万维网上了——而且在开始之前我对 JAMstack 一无所知(CSS 也占用了 90% 的时间)。
以下是一些可以使用 JAMstack 的配置:
- 我的配置:Gatsby JS(静态站点生成器)+ Contentful(无头 CMS)+ Netlify(以分布式方式托管站点的 CDN)
- Jekyll(SSG)+ Github pages(用于托管)
- 中间人(SSG)+ S3(简单存储服务)+ Netlify
这里有许多 SSG:2018 年十大 SSG
这里有许多无头 CMS:值得考虑的 10 个无头 CMS
这里有许多静态网站 CDN:哪个是最好的静态网站托管服务提供商?
教程?进一步阅读?
当然可以!我使用的教程是使用 Gatsby、Contentful 和 Netlify 进行内容管理。
另一个优秀的 JAMstack 教程是如何使用 Jekyll 和 Namecheap 快速轻松地创建博客
另外,在学习 JAMstack 及其相关问题的过程中,我发现《JAMstack 的甜蜜》这篇文章特别有用,而且写得非常好。当然,还有jamstack.org。
结尾
感谢阅读!如果您喜欢,请关注我的推特@len_coded或我的(新上线的 JAMstack)网站www.lencoded.com。
鏂囩珷鏉ユ簮锛�https://dev.to/len/jamstack-as-a-beginner-3fe0