利用Nginx實現簡易負載均衡 2015-10-16 #負載均衡 #Nginx配置
作者:王松_Striker
郵箱:song@secbox.cn
團隊:安全盒子團隊
基本思路如下:
比如我們有三個服務器:
其中:
130.251是反向代理轉發服務器
130.251和130.238分別是負載服務器
Mysql服務器沒有標出來,
為方便區分,我們先把1號負載的首頁寫成111111111
2號負載的首頁寫成222222
然后我們現在控制130.251, 把nginx配置文件里面原本的server{}全部刪掉, 在http{}里面加上:
Upstream myweb1{
#定義地址池
Server 192.168.130.238
Server 192.168.130.154
}
server {
listen 80;
server_name www.sohu.com;
#使用www.sohu.com訪問
location / {
proxy_pass http://myweb1;
#使用地址池
proxy_set_header Host $host;
#利用HOST變量向后端服務器傳遞需要解析的客戶端訪問的域名(傳遞域名)
proxy_set_header X-Forwarded-For $remote_addr;
#$remote_addr 把客戶端真實IP賦予X-Forwarded-For。后端服務器才能獲取真實的客戶端IP。以便記錄日志,要不日志中記錄的訪問信息都是負載服務器,而不是客戶端(傳遞IP)
}
}
保存之后重啟nginx即可, 我們來訪問www.sohu.com試試,
刷新一下