nginx实现二级域名转发

现在有这样的一个需求:访问二级域名 http://ctexam.myctu.cn/pscexam的请求,转发到  考务系统应用服务器 8080端口。

nginx上我们已经配置了ctexam.myctu.cn域名转发到upstream ctexam负载均衡中,并且访问的是80端口。

现在在二级域名中要访问8080端口。

1.我们先要在三台web服务器中把8080端口开通

查看哪些端口被打开  netstat -anp
关闭端口号:iptables -A INPUT -p tcp --drop 端口号-j DROP
  iptables -A OUTPUT -p tcp --dport 端口号-j DROP
打开端口号:iptables -A INPUT -ptcp --dport  端口号-j ACCEPT
以下是linux打开端口命令的使用方法。
  nc -lp 23 &(打开23端口,即telnet)
  netstat -an | grep 23 (查看是否打开23端口)
linux打开端口命令每一个打开的端口,都需要有相应的监听程序才可以

或者我们可以直接编辑/etc/sysconfig/iptables后添加一行"-A INPUT -m state --state NEW -m tcp -p tcp --dport 端口号-j ACCEPT"。

重启iptables,输入"service iptables restart",重启成功以后,输入"service iptables status",回车,就会显示正在生效的规则。

 

2.我们在nginx上配置负载均衡psc_exam,注意这里是转发到8080端口

 然后我们在对应的server配置location,这里配置的是只要url中包含/pscexam以及所有的静态资源都转发的psc_exam中。

 3.检查nginx配置文件,重启nginx服务

 /usr/local/nginx/sbin/nginx/ -t          # 检查nginx配置

   /usr/local/nginx/sbin/nginx/ -s reload     # 重启

 

posted @ 2018-08-16 13:04  懵懵懂懂的小白  阅读(11964)  评论(0编辑  收藏  举报