使用Cloudflare Pages部署网站

本文写于 2021 年,Cloudflare Pages 的套餐限制和控制台界面可能已经变化。实际操作时,请以 Cloudflare 当前页面显示为准。

最近想搭建一个博客用来写文章。一开始用了 Wordpress,但服务器配置比较低,运行起来很慢。后来考虑用 GitHub Pages 托管静态网页,博客生成器则选择了 Hexo。不过在使用过程中,GitHub 偶尔会因为网络原因访问不稳定,体验并不理想。兜兜转转之后,我发现可以把静态文件部署到 Cloudflare Pages。Cloudflare Pages 支持 GitHub 和 GitLab 仓库,所以我顺手把博客源码也迁移到了 GitLab。

Hexo 的安装和配置这里不展开,官方文档已经介绍得很详细。

Cloudflare Pages 不同计划对比

Free Pro Business
$0 $20/mo $200/mo
1 build at a time 5 concurrent builds 20 concurrent builds
500 builds per month 5,000 builds per month 20,000 builds per month
Unlimited sites Unlimited sites Unlimited sites
Unlimited requests Unlimited requests Unlimited requests
Unlimited bandwidth Unlimited bandwidth Unlimited bandwidth

免费版主要有以下使用限制:

  • 同一时间只支持构建一个项目
  • 每月最多构建 500 次
  • 最大支持 10 个自定义域名
  • 网站最多包含 20000 个文件
  • 单个文件最大 25M

整体来看,用免费版托管个人博客已经足够。

创建项目

首先登录 Cloudflare,进入 Pages。

点击Pages

点击创建项目。

创建项目

授权 Cloudflare 访问代码仓库,然后选择要部署的仓库。

选择存储库

设置项目

  • 名称设置好后,项目会被部署到 {项目名称}.pages.dev
  • 框架预设选择 None
  • 构建输出目录填写 publish
  • 构建命令填写下面的内容
1
npm install hexo-cli -g && npm install && hexo clean && hexo generate

保存并部署

点击保存并部署后,项目就会开始构建。

设置自定义域名

选择项目,切换到自定义域,然后点击 设置自定义域

设置自定义域

填写自己的域名。

填写自己的域名

添加 DNS 解析记录。如果域名解析也托管在 Cloudflare,一般会自动添加。

DNS解析

构建项目

一切准备就绪后,每次将新文章推送到仓库,Cloudflare 都会自动构建并部署。

自动构建和部署

此外,Cloudflare Pages 也支持回滚到之前的部署版本。

回滚到之前的部署

文章作者: Ender
文章链接: https://www.fengyeju.net/archives/deply-site-by-cloudflare-pages
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 枫叶居