Nginx
Nginx多網站多公網ip
我已經部署了帶有架構的平台,其中我有 nginx lb 伺服器雜湊,後面是具有 4 個應用程序的應用程序伺服器。nginx lb server 有如下配置:
上游 example1.com { ip_hash; 伺服器 10.10.10.10;伺服器 10.10.20.10 }
上游 example2.com { ip_hash; 伺服器 10.10.10.11;伺服器 10.10.20.11 }
所以它代理到具有私有 IP 的伺服器。我的問題是每個應用程序如何獲得專用的公共 IP 地址?我的代理伺服器有 4 個 IP 地址,我想將每個地址指向每個應用程序。
謝謝!
這將滿足您的要求
使用以下內容創建以下文件 /etc/nginx/sites-available/domain1.com
upstream backend1 { ip_hash; server 10.10.10.10; server 10.10.20.10; } server { listen 1.1.1.1:80; listen 1.1.1.2:80; server_name www.domain1.com; location / { proxy_pass http://backend1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
然後製作第二個文件 /etc/nginx/sites-available/domain2.com
upstream backend2 { ip_hash; server 10.10.10.11; server 10.10.20.11; } server { listen 1.1.1.3:80; listen 1.1.1.4:80; server_name www.domain2.com; location / { proxy_pass http://backend2; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
然後執行 ln -s /etc/nginx/sites-available/domain* /etc/nginx/sites-enabled/