Nginx - 删除某些 URL 类别的尾部斜杠

Nginx - 删除某些 URL 类别的尾部斜杠

我在 Ubuntu 上使用 nginx 1.14.0。

我想删除每个 URL 后面的斜杠https://www.example.com/en/authors/*https://www.example.com/de/bloggers/*

因此任何人去到https://www.example.com/en/authors/hello/都应被重定向到https://www.example.com/en/authors/hellohttps://www.example.com/de/bloggers/hello/https://www.example.com/de/bloggers/hello,同样...

我尝试了一些基于答案,但似乎不适合我的情况,因为我想从或之后删除所有尾随斜线/en/authors/*/de/bloggers/*并且它可能还涉及通配符

我尝试过的一种模式是rewrite ^/(?!authors|bloggers)(.*)/$ /$1 permanent;,但它不起作用

答案1

我相信这应该可行。

请注意,这尚未经过测试。

rewrite ^(\/example.com/\en\/authors.*)\/$ $1 permanent;

您可能不需要转义 /,例如:

rewrite ^(example.com/en/authors.*)/$ $1 permanent;

相关内容