J

JAMstack 作为初学者

2025-06-09

JAMstack 作为初学者

我最近建立了自己的网站和博客。这是我第一次从零开始做一个正式的网页开发项目,从下面的搜索记录来看,我想大家都会同意我当时基本上什么都不懂(毕竟人总得有个起点吧?)。

i1

i2

i3

基本上,我知道像 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 的配置:

  1. 我的配置:Gatsby JS(静态站点生成器)+ Contentful(无头 CMS)+ Netlify(以分布式方式托管站点的 CDN)
  2. Jekyll(SSG)+ Github pages(用于托管)
  3. 中间人(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
PREV
3x AWS 认证:已完成
NEXT
“T” 开发人员