情景模拟:
问题1:
我们买了一个某某服务器,如果用这台服务器只跑一个项目,可能会有点浪费。
解决方案1:
安装多个Tomcat放置多个项目,分配不同的端口。
问题追加2:
有的项目对端口有强制要求,例如:微信订阅号等等。需要80或者443端口,现在我们需要多个项目公用一个端口[例如:80]
解决方案2:
可以把多个项目放置到同一个Tomcat中,公用一个端口。
问题追加3:
如果我们某一个项目出现问题,需要重启服务,那么Tomcat下的所有都会restart。
解决方案3:
我们今天的主题,通过Nginx实现多个项目公用一个端口。
注意:这里和F5区分[并非一码事]。
1、准备[我们是在虚拟机中模拟测试]
Nginx:192.168.102.110:7777
Tomcat1:192.168.102.110:9526/A[项目]
Tomcat2:192.168.102.110:9527/B[项目]
2、 修改配置
Tomcat1:
修改端口为:9526
vi tomcat1/conf/server.xml
项目A
Tomcat2:
vi tomcat2/conf/server.xml
修改端口为:9527
Nginx:7777
vi nginx1.8/conf/nginx.conf
修改端口及绑定ip[有域名的可以用自己的域名]
注意:上面的upstream是配的F5先注释了[不用理睬]。
Location /A[自己的tomcat1项目名]
Location /B[自己的tomcat2项目名]
3、 测试
开启Tomcat1、Tomcat2、Nginx服务
Tomcat1
Tomcat2
Nginx
浏览器访问:
分别访问A、B项目。
测试成功。