1、配置nginx负载均衡使用uptream
- 根据目录设置https://www.jb51.net/article/173259.htm
- 当我访问域名时,就会被nginx反向代理到172.16.1.7:80或172.16.1.8:80或172.16.1.9:81上
http {#后端web地址池 upstream www_pool {server 172.16.1.7:80 weight=1;server 172.16.1.8:80 weight=1;server 172.16.1.9:81 weight=1;
}server {listen 80;#多个域名用空格隔开server_name www.etiantian.org bbs.etiantian.org; location / {index index.html index.htm;#反向代理到地址池proxy_pass http://www_pool;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $remote_addr;proxy_set_header X-Forwarded-Proto https;}}
}
2、基于https的负载均衡配置
# cat /etc/nginx/Virtul/manager_proxy.conf
upstream www_manager {server 172.16.40.122:80 weight=1;server 172.16.40.120:80 weight=1;
}#upstream www_manager_ssl { # 如果放开这里反而报400错误
# server 172.16.40.122:443 weight=1;
# server 172.16.40.120:443 weight=1;
#}server {listen 80;server_name saas3.deepcloudsdp.com;location / {#index index.html index.htm;#反向代理到地址池proxy_pass http://www_manager;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $remote_addr;}}
server {listen 443 ssl; # 这里的ssl表示开启ssl 相当于旧版本的ssl onserver_name saas3.deepcloudsdp.com;ssl_certificate /etc/nginx/SSL/cert.pem;ssl_certificate_key /etc/nginx/SSL/cert.pem;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;location / {#index index.html index.htm;#反向代理到地址池proxy_pass http://www_manager; #让443也去找80,如果让443找443就写成proxy_pass https://www_manager_ssl,否则会报错400 Bad Request: The plain HTTP request was sent to HTTPS portproxy_next_upstream http_502 http_504 error timeout invalid_header;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $remote_addr;proxy_set_header X-Forwarded-Proto https; }
}