背景:因公司内部使用tomcat为7.0.82版本,最近该版本爆AJP端口漏洞,需更换Tomcat,此文记录从tomcat更换所遇到的问题及解决方案,本文及时更新!
- 
一个机器安装多个tomcat版本,修改catalina.sh文件,在以下地方增加以下内容 
 
 export CATALINA_BASE=
 
 KaTeX parse error: Double subscript at position 11: CATALINA_4_̲BASE export CAT…
 
 CATALINA_4_HOME
 
 标记红色的,多个则依次类推
 
   
- 
tomcat jvm虚拟机内存配置,修改catalina.sh文件,在以下地方增加以下内容 
 
 JAVA_OPTS=”-server -Xms256m -Xmx4096m -XX:PermSize=256m -XX:MaxPermSize=512m”
 
   
- 
tomcat端口配置,多个tomcat时需同步修改启动跟关闭端口,否则关闭一个tomcat,另外的也会随之关闭 
 
 关闭端口:
 
  
 
 启动端口
 
   
- 
域名访问,在以下界面增加以下内容,同时需将域名文件放置在指定路径下 
 
   
- 
关闭AJP端口,将AJP使用端口注释 
 
   
- 
自定义项目路径,在以下内容下增加,自定义项目路径 
 
  
 
 7.tomcat启动时,报错Exception in thread “main” Java.lang.InternalError: Can’t connect to X11 window server using ‘:0.0’ as the value of the DISPLAY variable. 处理方法,在startup.sh以下地方增加以下内容export CATALINA_OPTS=”-Djava.awt.headless=true”
 
   
- 
tomcat日志路径修改 
 
  
 
 8.低版本切换高版本的tomcat出现 Invalid character found in the request target. The valid characters are defined in RFC 3986 解决办法
 
 1.在tomcat conf文件夹下编辑catalina.properties文件,在后面追加tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}
 
 org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
 
 2.在tomcat conf文件夹下service.xml中增加以下内容:relaxedPathChars=”|{}[],”
 
 relaxedQueryChars=”|{}[],”/
 
  
 
  
 
 9.问题描述,生产客户反馈在打开创建航次杂费跳转新页面时候,系统报错:同上面一致,因为经过了排查发现tomcat已经配置好,不会在出现上述问题,于是在浏览器新建一个页签将地址复制进去,惊奇的发现,能访问了,对比两个URL发现在新页签打开的地址中一个中文进行了转码,而在弹出窗口的那个地址仍显示中文,知道问题所在让程序员在弹出窗口的界面进行了强制转码,更新代码重新部署 问题解决!
 
   
 
