Возможно, запрос уходит не на тот сервер ? proxy_set_header с
предыдщего уровня в этом случае не наследуются.
Я могу ошибаться, но конструкция
server {
listen xx.xx.xx.xx:80;
server_name xxxxxxxx.ru;
location /i/ {
root /xxxxxxxxxx;
expires 30d;
charset windows-1251;
}
location ~* \.xml\.gz$ {
root /xxxxxxxxxx;
}
location / {
proxy_set_header Args "";
proxy_pass http://127.0.1.5:80/;
}
}
весьма вероятно изменяет ещё и заголовок Host. Как закомментарю
proxy_set_header, так всё работает.
Сейчас ещё посмотрел внимательнее заголовки: в поле Host записалось
"127.0.1.5:80", хотя на уровне http у меня записано:
proxy_set_header Host $host;
Вот такая петрушка.