Интересности с proxy pass и upstream

Mitry Matyushkov nginx-forum на nginx.us
Сб Окт 16 23:45:35 MSD 2010


Привет.

Столкнулся сегодня с такой фичей. Имеем
конфиг:

[code]
upstream xxx {
	server 127.0.0.1:61111;
}

server {
	listen			80;
	server_name		xxx.cool.domain.tld;
	location / {
		proxy_set_header	X-Forwarded-For		$proxy_add_x_forwarded_for;
		proxy_set_header	X-Forwarded-Host	$http_host;
		proxy_set_header	X-Real-IP		$remote_addr;
		proxy_set_header	Host			$http_host;
		proxy_pass		http://xxx;
	}
}
[/code]

При вызове http://xxx.cool.domain.tld бэкэнд делает
редирект на http://xxx.cool.domain.tld/login. Именно
этот Location приходит от него в nginx. Nginx же
отдает клиенту .cool.domain.tld/login, т.е., просто
вырезает то, что прописано в proxy_pass. При
замене xxx на yyy в upstream и proxy_pass все
начинает работать как и ожидается.

Вот и думаю: просто запомнить или
написать в спортлото? :)

nginx version: nginx/0.8.50

ps. "А вы так не делайте!" (c) С.Джобс.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,141342,141342#msg-141342




Подробная информация о списке рассылки nginx-ru