我们在工作中遇到这样一种情况,我们试图在路由到同一服务器上的 index.html 文件时保留 url。
https://myserver.com/ad/987987 我们希望路由到 https://myserver.com/ad/index.html但保留原始网址
我尝试过的事情:
location ~ ^/ad/([0-9]+) {
return 301 https://$server_name/ad/index.hmtl;
}
- 路线更改有效,但它会改变网址
location ~ ^/ad/([0-9]+) {
proxy_pass https://$server_name/ad/index.html;
proxy_set_header Host $host;
}
- 返回 404
location ~ ^/ad/([0-9]+) {
rewrite "(/ad/[0-9]+)" /ad/index.hmtl;
}
- 返回 502
我不知道接下来该怎么做。
答案1
您很可能正在寻找这个:
location ~ ^/ad/([0-9]+) {
try_files /ad/index.html;
}
这使得 nginx 查找语句/ad/index.html
中与模式匹配的每个 URL 。location