Will this work, is it the best way?

Steve Wilson lists-nginx at swsystem.co.uk
Fri Jan 30 11:57:17 UTC 2015


Hi,

Slightly complicated setup with 2 nginx servers.

server1 has a public ipv4 address using proxy_pass to server2 over ipv6 
which only has a public ipv6, this then has various upstreams for each 
subdomain.

ipv6 capable browsers connect directly to server2, those with only ipv4 
will connect via server1.

I'm currently considering something like the below config.


server1 - proxy all subdomain requests to upstream ipv6 server:

http {
  server_name *.example.com;
  location / {
   proxy_pass http://fe80::1337;
  }
}

server2:

http {
  server_name ~^(?<subdomain>\w+)\.example\.com$;
  location / {
   proxy_pass http://$subdomain
  }

  upstream subdomain1 {
   server 127.0.0.1:1234;
  }
}

The theory here is that each subdomain and upstream would match, meaning 
that when adding another upstream it would just need the upstream{} 
block configuring and automatically work.

I realise there's dns stuff etc but that's out of scope for this list 
and I can deal with that.

Does this seem sound? It's not going to see major usage but hopefully 
this will reduce work when adding new upstreams.

If you've a better way to achieve this please let me know.

Steve.



More information about the nginx mailing list