静态部署最有用的属性是:运维人员不用读应用代码,就能回答"这条响应是哪个目录提供的?"。Caddy 的 rootfile_server 指令直接提供了这个边界。

让根目录明确

一个最小的站点块可以贴近制品布局:

www.example.test {
    root * /srv/example-site
    encode zstd gzip

    header {
        -Server
        X-Content-Type-Options nosniff
        X-Frame-Options DENY
        Referrer-Policy strict-origin-when-cross-origin
    }

    file_server
}

该路径只是示例,不是该盲目粘贴的值。发布命令应发布一个完整目录、核验它,然后才把这个目录设为配置里的根。在旧的已知良好目录通过冒烟测试之前,保留它。

检查边缘,而不只是文件树

请求一个 HTML 页面、一个可下载的文本文件和一个缺失路径。把内容类型与状态码与本地制品比较。即使 404 页看起来很精致,若返回 200 仍是部署缺陷。

当 Caddy 管理 HTTPS 时,证书签发与 HTTP 到 HTTPS 的重定向都属于边缘行为。请从裸的 HTTP 监听器测试重定向,并从公共主机名读取证书名称。不要只凭进程健康就推断成功。

来源