Distinct upstream servers by name
hydrow
nginx-forum at nginx.us
Thu Jan 13 00:26:54 MSK 2011
Hello.
I want to proxy 2 apache vhosts.
Both vhosts running on apache default port: 8080 and both are resolved
through /etc/hosts
upstream ultimabex_upstream{
server ultimabex.va:8080;
server ultimabex.vb:8080;
}
The issue is how to send correct Host header to apache so it will find
vhost in his vhosts.conf
and serve it accordingly.
Used custom LogFormat in apache to catch ServerName(%v),
Canonical ServerName(%V) ans Host(%h) headers sent by nginx.
Setting Host in nginx is altering Canonical ServerName(%V) in apache
headers.
tried:
proxy_set_header Host $upstream_http_host - resulting in 127.0.0.1 in
apache logs
proxy_set_header Host $upstream_http_hostname - resulting in first
found apache vhost
It works great when i set Host manually, like:
proxy_set_header Host "ultimabex.va"
or
proxy_set_header Host "ultimabex.vb"
Any way to set it automatically?
Thank you.
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,165716,165716#msg-165716
More information about the nginx
mailing list