Nginx 重写请求 uri 的特定部分

Nginx 重写请求 uri 的特定部分

我对 nginx 重写概念还不太熟悉,不知道如何将 requested_uri 重写为特定 Uri。我正在尝试对特定 js 文件进行重写。

例如,我有这个,requested_uri: http://test.example.com/mf/test/index.js?review=abc 我只想将其重写为/index.js

我正在使用自己的特定域名。我想将所有内容重写为/index.js这样我就可以得到一个 js 文件作为响应。

我真的很难弄清楚它是如何工作的。有人能帮我做到这一点吗?

答案1

我认为这会起作用:

location ^~ /mv/test/index.js {
    rewrite ^/index.js$ $scheme://test.example.com/index.js?;
}

permanent如果希望它成为 301 永久移动,请添加:

location ^~ /mv/test/index.js {
    rewrite ^/index.js$ $scheme://test.example.com/index.js? permanent;
}

答案2

重写至最后一部分

rewrite ^.*\/(.+)\?.*$/ $1

相关内容