server { listen 8001 default_server; server_name _; access_log off; location / { proxy_ssl_server_name on; proxy_set_header Host doh.hnshosting.au; proxy_pass https://doh.hnshosting.au; add_header X-DoH-Server "Nathan.Woodburn/"; } } server { listen 8002 default_server; server_name _; access_log off; location / { proxy_ssl_server_name on; proxy_set_header Host easyhandshake.com; proxy_pass https://easyhandshake.com:8053; add_header X-DoH-Server "EasyHandshake.com"; } } server { listen 8003 default_server; server_name _; access_log off; location / { proxy_ssl_server_name on; proxy_set_header Host doh.hnsdns.com; proxy_pass https://doh.hnsdns.com; add_header X-DoH-Server "HNSDNS.com"; } } server { listen 8004 default_server; server_name _; access_log off; location / { proxy_ssl_server_name on; proxy_set_header Host hnsns.net; proxy_pass https://hnsns.net; add_header X-DoH-Server "HNSNS.net"; } } # Load balancing each node will be timed out for 10 minutes if it fails upstream main { server 127.0.0.1:8001 max_fails=1 fail_timeout=10m; server 127.0.0.1:8002 max_fails=1 fail_timeout=10m; server 127.0.0.1:8003 max_fails=1 fail_timeout=10m; server 127.0.0.1:8004 max_fails=1 fail_timeout=10m; } server { listen 80; server_name _; access_log off; # For /dns-query requests, we will use the upstream defined above location /dns-query { proxy_pass http://main; } # All other requests will be redirected to a static page location / { root /var/www/html; index index.html; } }