1
我有几个服务器名称,如www.example.com example.com www.example.de example.de。如果没有参数,我想修改语言的URL 例如nginx基于域名重定向并修改url
www.example.com ---> www.example.com?language=en
example.de --- > example.de?language=de
regrads
我有几个服务器名称,如www.example.com example.com www.example.de example.de。如果没有参数,我想修改语言的URL 例如nginx基于域名重定向并修改url
www.example.com ---> www.example.com?language=en
example.de --- > example.de?language=de
regrads
您可以通过使用一个空字符串比较$args
测试缺乏论据。例如:
if ($args = "") {
return 301 $scheme://$host$request_uri?language=en;
}
如果你有不同的server
块中实现你的域,可以适当地定制return
声明。
如果您需要在支持多个主机名的单个server
块中实现所有这些,则可能需要使用map
指令来计算language参数的值。有关更多信息,请参见this document。
这不是一个完美的解决方案,因为边缘条件www.example.com?
将导致www.example.com??language=en
看起来不好。