最近在规划公司的服务器的时候,需要解决这个需求:
用户通过负载均衡访A问后端的机器B,所有的业务都放在B与C上。B与C上的业务一致,用作容灾。正常配置nginx的时候,既可以通过访问A跳转到B访问,也可以直接通过B访问。这样负载均衡就没有意义了。也不安全,将后端的服务器暴漏在公网上了。
由于所有机器配置的都是双网卡,分配的有公网和内网ip,于是决定将nginx监听内网的ip,再将A反向代理B,叶配置内网ip。具体措施如下
1、将反向代理模块里的ip池换成对应机器的内网ip
upstream web_pools { server 10.26.47.150:80 weight=1; server 10.28.50.209:80 weight=1; }
2、将后端的nginx监听到内网的网卡上
server {
listen 10.26.47.150:80;
server_name test.xxx.com;
access_log logs/test.xxxx.com.log main;
location / {
proxy_pass http://localhost:8085;
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;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 6 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}
重启nginx后检查,发现已经绑定到内网ip上了
- 转载请注明来源:nginx双网卡监听设置
- 本文永久链接地址:http://www.hongxiaowei.com/xiaowei/420.html