2024-09-25
cloudflare pages是一个无服务器的网站托管服务,可以帮助你快速上线网站。
它支持多种前端和静态网站生成器,如React、Vue、Angular、Svelte、Eleventy、Hugo、Jekyll、zola等。
下面,我以zoal为例,介绍如何用cloudflare pages上线网站。
首先,你需要把zola网站代码上传到github。可以不必使用zola build命令,因为cloudflare pages会自动构建。
到达cloudflare官网,选择Workers and Pages。选择创建 - 连接到git,导入你的github项目。
选择项目的框架,这里选择zola。再选择默认的构建命令zola build。输出目录是public。
注意:zola有个坑。直接部署是不成功的,需要加一个环境变量UNSTABLE_PRE_BUILD,值为asdf plugin add zola https://github.com/salasrod/asdf-zola && asdf install zola 0.18.0 && asdf global zola 0.18.0
原因是cloudflare只支持v1的zola,而最新已经到v2了。具体构建可以见zola官方解释
如果你的zola项目是用yarn管理依赖,不知为啥会反复报错。在与AI一同调试后也没用,我随删除了yarn.lock文件,改用npm install,自动生成package-lock.json,重新push一下仓库,就成功了。
选择项目中的自定义域,就可以选择域名了。注意,这里的域名指在cloudflare解析的域名。这意味着,你需要把DNS解析的服务器指向cloudflare。