# bench 的 Caddy 配置:静态托管 + 网关反向代理 # # :80 表示监听 80 端口、禁用自动 HTTPS(容器场景由外层决定 TLS; # 若将来直接暴露公网域名,把 :80 换成域名,Caddy 会自动签发证书) # # GATEWAY 由 docker run -e / compose environment 注入(Caddyfile 支持 {$GATEWAY} 环境变量占位) # 未注入时 Caddy 启动会因空地址报错——与 vite dev 行为一致:不写死默认值 :80 { # 静态站点:根目录 + SPA fallback(不存在的路径回退 index.html) root * /usr/share/caddy encode gzip # 接口代理:与 vite.config.ts 的 dev 代理语义一致,转发到网关 @api path /api/* /v1/* handle @api { reverse_proxy {$GATEWAY} } handle { try_files {path} /index.html file_server } }