diff --git a/nginx.conf b/nginx.conf index 54f774d..4c5533f 100644 --- a/nginx.conf +++ b/nginx.conf @@ -140,6 +140,24 @@ http { rewrite ^ /extension/install.html last; } + # Firefox 扩展包:优先用数据卷里的 **AMO 已签名包**。 + # 为什么不直接把签名包打进镜像:签名是 AMO 针对具体内容生成的产物, + # 提交进仓库既会与源码版本脱节(改代码就得重新签名),又是二进制。 + # 放进数据卷则能跨部署存活,需要更新时覆盖这一个文件即可。 + # 数据卷里没有(还没签名/没上传)时回落到镜像内的未签名包。 + # 这里用 root 而非 alias:alias 配 try_files 会把 URI 再拼一次, + # 实测容易 404。root=/app/data 时 $uri=/extension/navi-firefox.xpi + # 正好解析成 /app/data/extension/navi-firefox.xpi。 + location = /extension/navi-firefox.xpi { + root /app/data; + try_files $uri @firefox_xpi_image; + } + + location @firefox_xpi_image { + root /app/dashy; + try_files $uri =404; + } + # 容器健康检查(部署脚本与 Docker HEALTHCHECK 使用) location = /healthz { proxy_pass http://127.0.0.1:3005/healthz;