nginx 重写路由以将所有 .com/en 页面重定向到 .com 版本
nginx Rewrite routes to redirect all .com/en pages to the .com version
之前可能有人问过这个问题,但我找不到有效的解决方案。
一个网站支持多种语言,默认到英语。如何设置 nginx 重写命令以将 .com/en/ 路由到 .com
例如
URL
http://www.tender.com/en/any_path
Redirect URL:
http://www.tender.com/any_path
请注意,我只希望 /en(英语)在没有 /en 的情况下路由到,而所有其他语言都应该可以通过它的短裤访问,例如 /fr
我正在使用以下工具:
- nginx(nginx/1.17.3)
- ruby(2.5.7)
- Rails(5.1.6.2)
更新:
location /en {
rewrite ^/en(/.*)$ break;
}
试试这个:
location /en {
rewrite ^/en(/.*)$ last;
}
我就是这样解决的。如果有人遇到同样的问题,可以尝试查看此解决方案是否有帮助。
我把它放在一个单独的位置块中。
location /en {
rewrite ^/en(/.*)$ redirect;
}
之前可能有人问过这个问题,但我找不到有效的解决方案。
一个网站支持多种语言,默认到英语。如何设置 nginx 重写命令以将 .com/en/ 路由到 .com
例如
URL
http://www.tender.com/en/any_path
Redirect URL:
http://www.tender.com/any_path
请注意,我只希望 /en(英语)在没有 /en 的情况下路由到,而所有其他语言都应该可以通过它的短裤访问,例如 /fr
我正在使用以下工具:
- nginx(nginx/1.17.3)
- ruby(2.5.7)
- Rails(5.1.6.2)
更新:
location /en {
rewrite ^/en(/.*)$ break;
}
试试这个:
location /en {
rewrite ^/en(/.*)$ last;
}
我就是这样解决的。如果有人遇到同样的问题,可以尝试查看此解决方案是否有帮助。
我把它放在一个单独的位置块中。
location /en {
rewrite ^/en(/.*)$ redirect;
}