1. ✅tomcat虚拟主机
1.1. 📝修改配置文件
<Host name="www.zhubl.xyz" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.zhubl.xyz_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
2. ✅tomcat多实例
-
- 降低配置
- 使用虚拟化(创建虚拟机)
- 服务的多实例(二进制安装,编译安装,容器运行docker)
- 多实例:在同1台机器运行多个相同的服务,充分利用资源
1.解压二进制tomcat包
tar xf apache-tomcat-9.0.106.tar.gz
2.将tomcat目录移动到/app/tools/目录下
mv apache-tomcat-9.0.106 /app/tools/tomcat_8081
3.修改tomcat监听端口
sed -i 's#8080#8081#g' /app/tools/tomcat_8081/conf/server.xml
sed -i 's#8005#8006#g' /app/tools/tomcat_8081/conf/server.xml
4.启动tomcat
/app/tools/tomcat_8081/bin/startup.sh
5.检查端口
ss -lntup | grep java
3. ✅tomcat远程监控
- 监控软件zabbix,需要获取到jvm数据信息,做监控(tomcat(war),jar)
- 需要tomcat或jar包开启远程监控功能 jmxremote
4. ✅tomcat部署https
4.1. 📁将ssl证书存放到/app/tools/tomcat/cert/keys/目录下
/app/tools/tomcat/cert/keys/zhubl.xyz.pfx
4.2. 📝修改tomcat配置文件
- 开启8443端口
- keystoreFile="/app/tools/tomcat/cert/zhubl.xyz.pfx"
- keystorePass="证书密码" 密码文件的内容写到这里
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="/app/tools/tomcat/cert/keys/zhubl.xyz.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"
clientAuth="false"
SSLProtocol="TLSv1.1+TLSv1.2+TLSv1.3"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
4.3. 🔍访问测试
https://zhubl.xyz.pfx
4.4. 🚀tomcat跳转
- 配置HTTP请求自动跳转HTTPS
- 修改web.xml文件
<security-constraint>
<web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
