我有这个服务器,我使用django i18n用于几种语言,但我不能让nginx使用相同的位置服务这些目录。
location /(fr|en|ko|de)/ {
proxy_pass http://127.0.0.1:8005;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
add_header P3P 'CP=ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
}
但这样做并不起作用,也不能满足这些网址的要求。
唯一可行的解决方案是我制作4个位置块的解决方案,但这不是最好的解决方案...
那么,真正的解决方案是什么?
答案 0 :(得分:1)
您混淆了前缀位置和正则表达式位置的语法。
您需要指定一组语言,因此需要正则表达式。
正确的表达方式是:
location ~* ^/(fr|en|ko|de)/ { ... }
有关详细信息,请参阅this document。