nginx反向代理tomcat多实例

1.tomcat多实例配置_基于端口号

前期需要准备java 环境 这里不作赘述

bash 复制代码
# 下载tomcat源码包
# 清华站点下载
https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.95/bin/apache-tomcat-8.5.95.tar.gz
https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.82/bin/apache-tomcat-9.0.82.tar.gz
https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-10/v10.1.15/bin/apache-tomcat-10.1.15.tar.gz


[root@localhost tar]# tar xf apache-tomcat-8.5.96.tar.gz 
[root@localhost tar]# ls
apache-tomcat-10.1.24.tar.gz  apache-tomcat-8.5.96.tar.gz       jdk-8u251-linux-x64.tar.gz  jvmtop-0.8.0.tar.gz
apache-tomcat-8.5.96          jdk-11.0.23_linux-x64_bin.tar.gz  jpress-web-newest.war       visualvm_202.zip

[root@localhost tar]# cp -a apache-tomcat-8.5.96 /usr/local/tomcat8.5_01
[root@localhost tar]# cp -a apache-tomcat-8.5.96 /usr/local/tomcat8.5_02

[root@localhost tar]# ll /usr/local/ | grep tomcat
drwxr-xr-x. 9 root root 220 9月  23 11:39 tomcat8.5_01
drwxr-xr-x. 9 root root 220 9月  23 11:39 tomcat8.5_02

[root@localhost tar]# sed -i 's#8005#8011#;s#8080#8081#' /usr/local/tomcat8.5_01/conf/server.xml
[root@localhost tar]# sed -i 's#8005#8012#;s#8080#8082#' /usr/local/tomcat8.5_02/conf/server.xml

[root@localhost tar]# /usr/local/tomcat8.5_01/bin/startup.sh 
[root@localhost tar]# /usr/local/tomcat8.5_02/bin/startup.sh

[root@localhost tar]# ss -tuln | grep 80                                         
tcp    LISTEN     0      100      :::8081                 :::*                  
tcp    LISTEN     0      100      :::8082                 :::*  

2.nginx 反向代理tomcat

bash 复制代码
# 安装
[root@localhost tar]# yum -y install nginx

[root@localhost tar]# systemctl start nginx

[root@localhost tar]# netstat -lntup | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      29873/nginx: master 
tcp6       0      0 :::80                   :::*                    LISTEN      29873/nginx: master 

[root@localhost tar]# vim /etc/nginx/conf.d/tomcat.conf 

 upstream tomcatWeb {
        server 192.168.29.200:8081;
        server 192.168.29.200:8082;
    }

    server {
        listen       80;
        server_name  192.168.29.200;
        location / {
            proxy_pass http://tomcatWeb;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

[root@localhost tar]# echo 8081 > /usr/local/tomcat8.5_01/webapps/ROOT/index.jsp 
[root@localhost tar]# echo 8082 > /usr/local/tomcat8.5_02/webapps/ROOT/index.jsp
[root@localhost tar]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost tar]# systemctl restart nginx

[root@localhost tar]# curl 192.168.29.200
8081
[root@localhost tar]# curl 192.168.29.200
8081
[root@localhost tar]# curl 192.168.29.200
8082
[root@localhost tar]# curl 192.168.29.200
8082
[root@localhost tar]# curl 192.168.29.200
8081
相关推荐
晚风吹人醒.4 分钟前
Linux系统安全及应用(账号权限管理、登录控制、弱口令、端口扫描)
linux·运维·系统安全·grub·sudo·账号管理
llilian_1614 分钟前
时间同步校时服务器配件清单及挑选攻略 校时时间服务器 网络时间同步装置
运维·服务器·网络
深圳市恒讯科技22 分钟前
防止服务器被黑:终极防范网络攻击指南
运维·服务器·网络安全
VicdorLin23 分钟前
docker报错: client version 1.24 is too old. Minimum supported API version is 1.44
运维·docker·容器
橘颂TA24 分钟前
【Linux】从 “抢资源” 到 “优雅控场”:Linux 互斥锁的原理与 C++ RAII 封装实战(Ⅰ)
linux·运维·服务器·c++·算法
RisunJan25 分钟前
Linux命令-init命令(管理运行级别和控制系统状态)
linux·运维·服务器
ayaya_mana25 分钟前
Chrony:通用-替换国内 NTP 源进行时间同步
linux·运维·服务器·chrony
深耕半夜26 分钟前
debug函数
linux·运维·服务器
一叶星殇29 分钟前
ASP.NET Core 后端如何通过 Nginx 获取真实客户端 IP 完整指南
服务器·tcp/ip·nginx
爱吃大芒果33 分钟前
openJiuwen在Ubuntu上的安装教程
linux·运维·ubuntu