盖茨比静态网站gen.并发布新内容

Bra*_*don 6 gatsby

使用Gatsby静态站点生成器项目,由于站点在webpack构建期间将内容文件呈现为html,这是否意味着对于类似博客的内容,每个新帖子都需要重新推送到服务器?

如果是这种情况,是否有人拥有该工作流程的最佳实践?

Kyl*_*ews 14

是的,当您更改其中一个源文件时,必须重建静态网站.在数据库支持的网站(例如Wordpress)中,HTML是在每个页面请求上即时构建的,因此如果您更改数据库中的内容,这将立即反映在下一页加载的网站的HTML中.

静态网站不会在每个页面请求上构建HTML.这就是他们如此快速(和安全)的原因,因为他们做的很少.服务器只是从磁盘上读取文件.但这确实意味着当您更改或添加网站的内容(例如新博客帖子)时,您需要重建网站.

有许多良好的工作流程来处理这种"重建和推送到服务器"的过程.

对于我的博客(bricolage.io),我只是在本地构建网站,然后将构建文件提交到Git中,然后在我的服务器上提取这些更改.我有一个网络服务器(caddyserver.com)设置来提供公用文件夹.这个有点手动的过程有效,因为我很少更新我的网站.

对于Github Pages,我将添加一个简单的deploynpm脚本"deploy": "gatsby build --prefix-links && gh-pages -d public".看看我为react-headroom做了什么https://github.com/KyleAMathews/react-headroom/blob/master/website/package.json

有许多静态网站托管公司都有Gatsby的内置工作流程.如果它们符合您的需求,我强烈推荐它们!

查看这些博文:

同样在未来几个月,Gatsby将增加对部署插件的支持,这将进一步简化设置良好的工作流程.