centos7 Tomcat 多项目配置
2021-07-30
目录
- Tomcat 各目录功能说明
- 在一个 Tomcat 下部署多个项目
- 在多个 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 "%r" %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~
本文来自博客园,作者:元月二一,转载请注明原文链接:https://www.cnblogs.com/ljq225/p/15078369.html

浙公网安备 33010602011771号