使用Cloudflare Pages搭建静态博客

使用Cloudflare Pages搭建静态博客

几年前尝试用Hexo搭建过一次静态博客站,整个过程总之比较繁杂,需要自己购买VPS,通过webhook实现自动部署,在自己申请tls证书;或者是通过Github Pages+Github Action实现自动部署,但是Repo必须设置为Public,这样即使是被删除的博文也能被看得到,并不方便。

这次尝试使用免费计划的Cloudflare Pages连接Github上的Private仓库,实现静态网页托管。顺便把以前的博客站的Markdown复制过来,十分方便。

Hexo博客配置

具体步骤参见官方文档。这里提一点关于Node.js的安装。因为Hexo的推荐安装方式是使用 npm install -g hexo-cli 进行全局安装,这对我这种环境洁癖是不能忍的。因为平时用Python比较多,所以顺便可以直接使用Conda进行Node.js的环境管理。conda-forge社区上提供了Node.js的包,所以可以很方便创建一个单独的Node.js环境用于hexo。

1
2
3
4
conda create -n hexo
mamba install -n hexo node.js python
conda activate hexo
npm install -g hexo-cli

这样npm的全局安装路径就在conda的虚拟环境目录下了。

Cloudflare Pages配置

当本地的Hexo已经配置完毕后,就可以通过Git上传至Github上的私有仓库。

在Cloudflare Deshboard中,打开Workers & Pages,新建一个Pages应用,就会自动提示连接到Git仓库。通过授权Github账号,Cloudflare即可访问指定的私人仓库。在构建设置中,构建命令输入 npx hexo generate ,构建输出目录输入 public即可。

如果使用自定义域名,则最好把域名也加入到Cloudflare Dashboard中,Cloudflare会自动为博客签署TLS证书。

结语

至此Hexo博客已经配置完毕。每次本地新建Markdown博文后,只需要push至Github即可。Cloudflare会自动获取新的push内容,自动构建新的页面,将网站缓存至Cloudflare CDN中,并使用自动签署的TLS证书为博客网站提供HTTPS连接。


使用Cloudflare Pages搭建静态博客
https://blog.wintertee.top/技术/使用Cloudflare-Pages搭建静态博客/
作者
WinterTee
发布于
2023年12月26日
更新于
2024年5月6日
许可协议