侧边栏壁纸

Cloudflare 部署站点时项目配置文件的位置

2025年05月13日 14阅读 0评论 0点赞

Cloudflare Pages 是一个强大的静态托管平台,不仅能轻松部署静态站点,还支持通过 /functions 目录集成 Workers,创建无服务器全栈应用。

同时,它支持通过根目录的特殊配置文件,如 _redirects 和 _headers,直接定义站点的重定向规则和 HTTP 响应标头。

但是如果使用了框架部署呢?
例如在部署 Cloudflare Pages 项目时选择了 框架预设,或者手动填写 构建命令 和 构建输出目录 了呢?

作者试过在这种情况下部署一个 Hexo 站点,将 _redirects 或者 _headers 文件放在项目的根目录是无法设置的。

构建命令:

npm install && npx hexo generate

构建输出:

/public
/hexo-project
  ├── /node_modules
  ├── /scaffolds
  ├── /source
  ├── /themes
  ├── _config.yml
  ├── .gitignore
  ├── package.json
  └── _headers

如文件结构所示,这种情况将 _headers 文件放到项目根目录是不会生效的,
如果在部署时设置了目录,如构建输出目录,则您必须将单独的设置文件放到构建输出目录中,
例如 /public,这种情况下特殊配置文件才能够生效,因为 Cloudflare Pages 自动识别的所检查的根目录并不是绝对的项目根目录。

例如:

/hexo-project
  ├── /node_modules
  ├── /public        <-- 生成的静态文件目录
  │   ├── /assets
  │   ├── /posts
  │   ├── index.html
  │   └── _headers   <-- 在这里放置 _headers 文件
  ├── /scaffolds
  ├── /source
  ├── /themes
  ├── _config.yml
  ├── .gitignore
  └── package.json

研究了好半天才明白必须要放在这里,即部署时设置的根目录或者输出目录。

0

—— 评论区 ——

昵称
邮箱
网址
取消
站点公告

联系1:xitcz@vip.qq.com

联系2:xitcz155@gmail.com

有事可以联系邮箱,并注明来意~

人生倒计时
最新评论
舔狗日记