You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx特定路径跳过301重定向规则配置求助

Nginx特定路径跳过301重定向规则配置求助

嗨,这个问题很好解决,只需要在你的https-example.conf里给/.well-known/assetlinks.json单独加一个location块,放在全局的location /前面就行——因为Nginx会优先匹配更具体的location规则。

具体配置修改如下:

server {
    listen 443 proxy_protocol http2;

    server_name example;

    # 精确匹配assetlinks.json路径,跳过301重定向
    location = /.well-known/assetlinks.json {
        # 根据S3的实际访问方式配置,以下是两种常见场景
        # 场景1:S3通过HTTP/HTTPS地址对外提供访问
        proxy_pass https://你的S3桶访问地址/.well-known/assetlinks.json;
        
        # 场景2:S3桶已挂载到服务器本地目录
        # root /挂载的S3本地目录路径;
        
        # 可选:添加JSON类型的响应头,确保文件被正确识别
        add_header Content-Type application/json;
    }

    # 其余所有请求依然执行301重定向
    location / {
        return 301 https://www.example.com$request_uri;
    }
}

这里还有几个需要注意的细节:

  • 用location =(精确匹配)能确保只有这个特定路径被命中,不会误影响/.well-known下的其他文件
  • 如果你的https-www-example.conf里也配置了/.well-known/assetlinks.json,要保证两个域名下的返回内容完全一致,避免验证时出现不一致问题
  • 修改完配置后,一定要先检查语法再重启Nginx:
sudo nginx -t
sudo systemctl restart nginx

这样调整后,Google访问example.com/.well-known/assetlinks.json时就会直接返回200状态码和正确的文件内容,不会被重定向到www域名了。

备注:内容来源于stack exchange,提问作者Tom Oakley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 10:54:29