[root@nginx-1.8.0 vhosts]# /opt/nginx/sbin/nginx -t 【检查配置是否正确】
nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /opt/nginx/conf/nginx.conf test is successful
[root@host-192-168-1-102 vhosts]# /opt/nginx/sbin/nginx 【启动nginx】
到此,上面需求中的nginx反向代理和负载均衡就已经配置完成了!
访问:8080的结果显示的就是B机器,即:8080的结果
访问:8088的结果显示的就是C机器,即:8088的结果
访问:8090/ios的结果显示的就是B机器,即:8090/ios/的结果
访问的请求就会被负载给到后端两台机器和
可以在103.110.86.8本机可以使用curl和telnet测试到目标机器是否通顺~
[root@nginx-1.8.0 vhosts]# curl :8080
[root@nginx-1.8.0 vhosts]# telnet 192.168.1.102 8080
--------------------------------------------------------------------------------------------------------------------------------------------
说明一下:
上面的nginx反向代理的需求,除了nginx反代配置之外,也可以使用iptables的nat转发实现。
比如:
访问A机器的8080端口,反向代理到B机器的80端口;
iptables的nat转发规则设置如下:
[root@opd ~]# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.1.102:80
[root@opd ~]# iptables -t nat -A POSTROUTING -d 192.168.1.102 -p tcp -m tcp --sport 80 -j SNAT --to-source 192.168.1.8
[root@opd ~]# iptables -t filter -A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
[root@opd ~]# service iptables save
**************************************
需要注意的是:
要打开A机器的ip转发功能:
[root@opd ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
然后后端机器B的route路由最好也设置成192.168.1.8
**************************************
这样,访问:8080的结果就是的结果