nginx as reverse proxy for many domains (many ips in proxypass?)

gregr401 nginx-forum at nginx.us
Wed Apr 27 03:37:14 MSD 2011


I'm sure there are a few different ways to accomplish this, personally
I'm working on a dynamic method to perform this with a mysql backend. 
For a more simplistic method, maybe try using a map hash for the
backend_server variable that is matched against the incoming
$http_host:

map_hash_bucket_size 64;

    map $http_host $backend_server {
        hostnames;

        default                                                         
backend-apache1.example.com;
        my-frontend-alias.example.com              
vip-super-secret-backend.example.com
        my-other-alias.example5.com                 
vip-other-secret-backend.example2.com
    }


    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;

server 80 {

    location / {

            proxy_pass  http://$backend_server

    }

}


Just an example, I'm sure I'm missing something above...  :)

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,193908,193924#msg-193924




More information about the nginx mailing list