Paw*_*nar 5 url nginx canonical-link nginx-location
我想将不带斜杠的 URL 重定向到带有斜杠的路径。所以/some-url到/some-url/
其余的网址,例如
应该保持不重定向。
我发现这篇文章https://www.ateamsystems.com/tech-blog/nginx-add-trailing-slash-with-301-redirect-without-if-statements/,其中作者建议使用以下规则:
location ~ ^([^.\?]*[^/])$ {
try_files $uri @addslash;
}
location @addslash {
return 301 $uri/;
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这并没有真正起作用。因为 url /some-url?q=v被重定向到/some-url/
您能否建议如何更改正则表达式以使其工作?
这应该可以解决问题:
location / {
if ($request_uri ~ ^([^.\?]*[^/])$) {
return 301 $1/;
}
try_files $uri $uri/ /index.php$is_args$args;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7650 次 |
| 最近记录: |