May 112011
 

Instead of writing multiple server blocks repeatedly in configuration, we can simplified configuration using nginx map module

ie:

    map_hash_bucket_size 128;

    map $http_host $backend_servers {
        hostnames;
        default							www.example.com;
        frontend.example2.com			backend.example2.com
        frontend.example3.com			backend.example3.com
        www.example.org					backend.example.org
    }

    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 {
		location / {
			proxy_pass  http://$backend_servers
		}
	}

source: taken from nginx mailinglist


May 022011
 

Like many other reverse proxying mechanism, the configuration is quite simple. All we need is just website that’s lived in ipv4, and Nginx with IPv6 capabled network.

        server {
                listen       [::]:80;  # your server's public IP address
                server_name  www.example.com;      # your domain name
                access_log  /var/log/nginx/www.example.com-access.log  main;

                location / {
                        proxy_pass         http://www.example.com/; # live webiste on IPV4
                        proxy_redirect     off;
                        proxy_set_header   Host             $host;
                        proxy_set_header   X-Real-IP        $remote_addr;
                        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

                }
        }