转移到Cloudflare Pages

Author Avatar
Kaibin Yang 3月 06, 2021
  • 在其它设备中阅读本文章

本文共计894字,大约需要3分钟进行阅读。

今天早上收到了一封来自Cloudflare的邮件,出于我订阅了证书透明度监视以及网站月度分析报告,Cf也从来不发推广和垃圾邮件,我会阅读来自他们的每一封邮件。
结果打开内容一看,是Cloudflare Page Beta的邀请函。于是我迫不及待地打开了Cloudflare Dashboard,对Pages进行设置。

配置

配置过程很简单。点击“Start a new project”,然后登陆你的GitHub账号,然后选择你想要部署的repo,最后输入你部署所使用的命令即可。目前只支持通过GitHub的部署,我想应该是其他平台的Apps还没注册下来。

与Netlify同样的,你也有两种使用方式:

  • 像之前一样将生成好的静态文件push到你的远程Git仓库,Cloudflare监测到变更时进行拉取并直接伺服。
  • 把整个项目文件夹push到你的远程Git仓库,Cloudflare监测到变更时进行拉取,按照你的配置编译出静态文件然后进行伺服。

第一种不用说了,使用起来是割裂感很小的,甚至可以说没有,就是改一个DNS记录的事情。而第二种,原先我在Netlify死活配置不起来的,在Cf我确实是成功配置了。因为在部署命令上Cf也做了不少预设,包括Gatsby、Jekyll、Hugo、Next.js、等等,也包括我正在使用的Hexo。不需要修改多少设置就可以直接使用。

使用

在完成配置之后,Cloudflare会给你分配一个*.pages.dev的域名(可以自定义前缀),你可以直接使用,当然也可以修改成自己的域名。如果你的域名也托管在Cloudflare,那可太方便了,直接在Custom domains输入你想要使用的域名,一键就给你安排妥当了,DNS记录啥的全帮你修改好。更是不会遇到像Netlify那样一定要关闭一个域名的Cf CDN才能够从Netlify颁发证书的问题。

当然作为Cloudflare的亲儿子,你更是可以通过Cloudflare Access来实现Netlify要付费的访问管理和登陆验证。(这功能现在是Coming soon,但是你如果已经拥有了自己的域名当然可以直接用)

另外因为他们做了GitHub App,在你的repo中你可以直接查看站点的部署状态,这样集成之后甚至做到了跟GitHub Pages的体验相差无几。

但是缺点仍是有的,比如站点静态文件的编译速度相较通过本地进行编译再上传是要慢得多,一次大概需要3min。但是对于我来说其实感知并不是特别强,因为之前我的配置下,站点静态文件从GitHub的服务器同步到Cf的CDN也需要不少时间。

为什么要转移到Cf Pages?

  • 尝鲜;
  • 速度相较先前有显著提升;
  • 管理起来实在是方便得多。

总结

拿出上次Netlify的表格……

Netlify + Cloudflare Netlify GitHub Pages + Cloudflare GitHub Pages Cloudflare Pages
速度 较好 较好
稳定性(国内) 较好
HTTPS 支持 支持 支持 支持 支持
自定义域名 多个 多个 单个(多个可跳转) 单个 多个
配置容易程度 较简单 简单 较简单
HTTP/3

本文同步在我的知乎发布。如果觉得不错可以去点一点赞、喜欢……
转移到Cloudflare Pages - 知乎

若正文中没有特别说明,文章以CC BY-NC-SA 3.0 协议授权转载。
本文链接:https://kaibinyang.com/2021/03/06/moving-to-cloudflare-pages/