2019独角兽企业重金招聘Python工程师标准>>>
需求:在一台服务器上部署两个tomcat项目,都想共用同一个端口号80。但是一台服务器tomcat端口号不能重复?那么这个问题怎么解决呢?
答案:使用nginx 同一端口根据不同域名转发到不同端口
实现方案:
①本地启动两个tomcat ,两个tomcat端口号分别为8080,8081一个nginx 端口号为80
②分别访问以下两个和 nginx
tomcat1 端口号8080 访问地址:127.0.0.1:8080
tomcat2 端口号8081 访问地址:127.0.0.1:8081
nginx 端口号80 访问地址 127.0.0.1
③在windows host文件中,建立两个域名映射地址
分别为:
127.0.0.1 8080.itmayiedu.com
127.0.0.1 8081.itmayiedu.com
8080.itmayiedu.com 对应tomcat端口号为8080
8081.itmayiedu.com 对应tomcat端口号为8081
④ 在nginx nginx.conf 配置使用nginx 同一端口根据不同域名转发到不同端口
#### 输入8080.itmayiedu.com 跳转到 http://127.0.0.1:8080
server {
listen 80;
server_name 8080.itmayiedu.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://127.0.0.1:8080;
index index.html index.htm;
}
}
## 输入8081.itmayiedu.com 跳转到 http://127.0.0.1:8081
server {
listen 80;
server_name 8081.itmayiedu.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://127.0.0.1:8081;
index index.html index.htm;
}
}
⑤运行效果
输入8080.itmayiedu.com 通过nginx转发跳转到http://127.0.0.1:8080
输入8081.itmayiedu.com 通过nginx转发跳转到http://127.0.0.1:8081
就这样我们可以看到,在不同域名通过同一个端口转发到不同的端口。