我有几个服务器名称,如www.example.com example.com www.example.de example.de。如果没有参数,我想将语言修改为URL 例如
www.example.com ---> www.example.com?language=en
example.de ---> example.de?language=de
regrads
答案 0 :(得分:0)
您可以通过将$args
与空字符串进行比较来测试缺少参数。例如:
if ($args = "") {
return 301 $scheme://$host$request_uri?language=en;
}
如果您在不同的server
块中实施了域名,则可以相应地自定义return
语句。
如果需要在支持多个主机名的单个server
块中实现所有这些,则可能需要使用map
指令来计算语言参数的值。有关详情,请参阅this document。
这不是一个完美的解决方案,因为边缘条件www.example.com?
会导致www.example.com??language=en
看起来不太好。