centos7 Tomcat 多项目配置

2021-07-30

目录

  1.  Tomcat 各目录功能说明
  2.  在一个 Tomcat 下部署多个项目
  3.  在多个 Tomcat 配置多个项目

 

1. Tomcat 各目录功能说明

bin :脚本文件目录,存放启动和关闭 Tomcat 的脚本文件
conf:存放 Tomcat 的配置文件,server.xml 尤其重要
logs:存放 Tomcat 日志文件
lib :存放 Tomcat 服务器和所有 web应用程序需要访问的 jar 文件。仅对所有 web app 可见,对 Tomcat 不可见(使用Shared类加载器加载)。
temp:Tomcat 运行时用于存放临时文件
webapps:发布 web 应用程序时,通常把 web 应用程序的目录及文件存放在这个目录下
work:Tomcat 把各种由JSP 生成的 Servlet 源文件和字节码文件放在这个目录下。删除后,启动时会自动创建

 

2. 在一个 Tomcat 下部署多个项目

先在 tomcat 目录下新增一个 webapps1 的目录,把新项目的 war 包放到这里目录的文件下解压就可以了。

修改配置文件,配置文件是 Tomcat 安装目录/conf/server.xml

# 修改配置文件 server.xml
vim server.xml
# 新增一个server端口,在最后一层 server 内面新增内容,修改四个地方 Catalina 下的文件 是 Tomcat 编译项目后,产生的文件 # 访问的端口
8088 Connector port="8088" <Engine name="Catalina1" defaultHost="localhost" <Host name="localhost" appBase="webapps1"
 <Service name="Catalina1">

    <Connector port="8088" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    <Engine name="Catalina1" defaultHost="localhost">


      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="localhost"  appBase="webapps1"
            unpackWARs="true" autoDeploy="true">


        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>
    </Engine>
  </Service>

# 开启防火墙端口并重启防火墙 ( root 权限 )
firewall-cmd --permanent --add-port=8085/tcp
firewall
-cmd --permanent --add-port=8088/tcp firewall-cmd --reload

# 修改完成后,重启 Tomcat 服务 
./shutdown.sh
.
/start.sh

 

# 测试

Tomcat 的数据目录(网站家目录)是 ROOT ,修改该目录下的 index.jsp 文件,修改内容为 “hello!!!!!!!!!!!”

但是这样的配置一个服务出了问题,重启 tomcat 就会将所有的服务重启。所以我们一般采用一个 tomcat 配置一个服务的方法。

 

2021-09-10

3. 在多个 Tomcat 配置多个项目

例如有两个项目,一个是 Tencent ,一个是 WeChat,首先将 tomcat 解压后复制一份,将名字改成对应的项目。

# 解压到指定位置
tar -zxf apache-tomcat-7.0.109.tar.gz -C /opt/tomcat/

# 改成对应项目名字
mv apache-tomcat-7.0.109/ tomcat-Tencent
cp -R tomcat-Tencent/ tomcat-Wechat

# 添加权限
chown -R tomcat:tomcat tomcat/

 

 

修改 conf/server.xml 文件,改以下两个位置,通过分配不同的端口区别不同的服务。

我是这样分配的

tomcat-Tencent

<Server port="8005" shutdown="SHUTDOWN">

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

tomcat-Wechat

<Server port="8006" shutdown="SHUTDOWN">

<Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

 

 

 

 

修改完 server.xml 文件,还要修改 bin/catalina.sh 文件,在文件注释结束处添加 JAVA_HOME,此方法的好处是可以满足不同的项目需要不同的 Java 版本。

 

 

将这两个文件修改完之后就可以启动 tomcat 了, bin/./startup.sh  

 

当然,不要忘记开启 8080 和 8081 端口哦,不然还是无法访问的,为了区别,我将 tomcat-WeChat/webapps/ROOT/index.jsp 的内容改成了 “** this page is tomcat-WeChat **”

# 测试

tomcat-Tencent 192.168.1.154:8080

 

 

tomcat-WeChat 192.168.1.154:8081

 

 

此上就是tomcat 部署多服务的两种方法啦,希望可以帮到大家,有不清楚的可以留言 O(∩_∩)O~

 

posted @ 2021-07-30 10:16  元月二一  阅读(281)  评论(0)    收藏  举报