nginx负载均衡配置
同一台服务器上测试:
假设主服务器为localhost:80 代理服务器 localhost:8080 ,localhost:8090
localhost:80niginx 配置修改:
a.最简单的反响代理
location ~ \.php$ { proxy_pass localhost:8080; }
档访问本地localhost:80/test.php时,实际输出为:localhost:8080/test.php
b.扩展代理
location ^~ /phpMyAdmin/ { proxy_pass localhost:8090; }
^~意思是不进行正则匹配,直接指向URL,访问phpMyAdmin时会指向到服务器localhost:8090/phpMyAdmin
location ~ \.php$ {
proxy_pass localhost:8080;
}
同a这样实现两个服务器代理
c.访问同以页面负载均衡配置
〉首先在nginx的配置文件nginx.conf的http模块中添加,服务器集群server cluster(我们这里是两台)的定义: 复制代码 代码如下: upstream myCluster { server localhost:8080 weight=5; server localhost:8090; } 表示这个server cluster包含2台服务器 weight是权重的意思,可以设置两台服务器负载比例 〉然后在server模块中定义,负载均衡: 复制代码 代码如下: location ~ \.php$ { proxy_pass http://myCluster ; #这里的名字和上面的cluster的名字相同 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; }