同一台服务器上测试:
假设主服务器为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;}