nginx.conf
包含以下内容
location /beta/ {
proxy_pass http://otherhost/;
}
然后以下两个检索工作:
curl -H 'User-Agent: Mozilla' http://localhost/beta/admin.html
curl -H 'User-Agent: iPhone' http://localhost/beta/admin.html
他们都检索http://otherhost/admin.html
当我将nginx.conf更改为:
时 location /beta/ {
if ($http_user_agent ~ iPhone ) {
}
proxy_pass http://otherhost/;
}
然后curl -H 'User-Agent: Mozilla' http://localhost/beta/admin.html
继续工作但是
curl -H 'User-Agent: iPhone' http://localhost/beta/admin.html
给出404和其他主机抱怨它没有名为beta/admin.html
的文件。无论if
是否为空,都会发生这种情况。
咦?