文章目录
JAVA-web程序Tomcat 容器的发布和常规操作
1 、war包发布
1.1 将已经打好的war包,直接放置到%TOMCAT_HOME%/webapps/
1.2 修改%TOMCAT_HOME%/conf/server.xml,在host节点中添加 节点
docBase:项目路径,可以使用绝对路径或相对路径,相对路径是相对于webapps
path:访问项目的路径,如:http://127.0.0.1:8080/demo1
reloadable:是否自动加载新增或改变的class文件.
debug属性与这个Engine关联的Logger记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。 也就是程序异常时写入日志文件里的详细程度。
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context debug="0" docBase="D:\demo1\web" path="/demo1" privileged="true" reloadable="true"/>
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
1.3 修改%TOMCAT_HOME%\conf\Catalina\localhost中添加一个XML文件
xml的名称即为项目名称,或者为工程名称
如:demo1.xml,SO访问地址为:http://localhost:8080/demo1
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="D:\demo1\web" reloadable="true" />
2 、jar包发布
2.1 正常情况下。
#java -jar xxxx.jar
2.2 如果提示项目
在项目运行中,如果出现没有主清单属性
处理方式一:手动添加
打开生成的jar,里面有一个MANIFEST.MF的文件把它打开:
发型并没有 Main-Class执行主类这个配置;
一种解决办法就是手动添加Main-Class 文件
处理方式二:找程序从新打包,并告知启动缺少启动类配置
3 端口配置
在%TOMCAT_HOME%/conf/server.xml中修改port端口
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
4 共享session
4.1 结构图:
表示多个tomcat 中共同使用redids 来存储session,来实现session 共享的实现
4.2 tomcat 配置信息
请求监听端口 | Shutdown监听端口 | AJP监听端口 | |
---|---|---|---|
tomcat_1 | 8080 | 8005 | 8009 |
tomcat_2 | 8090 | 8015 | 8019 |
4.3 修改配置
tomcat_1端口按照默认配置(不改server.xml)
tomcat_2端口改为下面的配置(修改server.xml)
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />
4.4 配置session 共享
tomcat_1,tomcat_2都要修改contenxt.xml
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" />
<Manager className="com.radiadesign.catalina.session.RedisSessionManager"
host="localhost"
port="6379"
database="0"
maxInactiveInterval="60" />
4.5 添加jar包
将这几个包都添加到tomcat目录下的lib目录中,这样就完成 了共享session配置
4.6 拓展
本实例:说的是redis 来实现session共享
也可以使用其他缓存组件来实现,比如:memcahed
参考地址:https://www.cnblogs.com/kevingrace/p/6398672.html