首页 » 资源分享 » Linux » 正文

nginx负载均衡与反向代理配置



安装了三台centos
测试域名 :dev.test_3.cn
A服务器IP :192.168.33.13 (主)
服务器IP :192.168.33.14
C服务器IP :192.168.33.12

host绑定域名: 192.168.33.13 dev.test_2.cn

A服务器nginx.conf设置
打开nginx.conf,文件位置在nginx安装目录的conf目录下。
在http段加入以下代码
upstream test_3.cn {
server 192.168.33.12:83;
server 192.168.33.14:83;
}

server{
listen 83;
server_name dev.test_3.cn;
location / {
proxy_pass http://test_3.cn;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

保存重启nginx

B、C服务器nginx.conf设置
打开nginx.confi,在http段加入以下代码
server{
listen 83;
server_name dev.test_3.cn;
index index.html;
root /home/www/test;
}
保存重启nginx

测试:
当访问dev.test_3.cn的时候,为了区分是转向哪台服务器处理我分别在B、C服务器下写一个不同内容的index.html文件,以作区分。
打开浏览器访问dev.test_3.cn结果,刷新会发现所有的请求均分别被主服务器(192.168.33.13)分配到B服务器(192.168.33.14)与C服务器(192.168.33.12)上,实现了负载均衡效果。

主服务器也加入进来:
主服务器的nginx.conf加入以下一段代码:
server{
listen 83;
server_name dev.test_3.cn;
index index.html;
root /home/www/test;
}

反向代理到baidu:
server {
listen 82;
server_name www.test.com;
location / {
proxy_pass http://www.baidu.com/;
}
}