一、背景:
将项目从tomcat8.5.0升级至8.5.9,出现页面乱码问题,更改配置文件后修复。
二、问题:
1、启动tomcat后启动窗口乱码:
更改tomcat目录下conf/logging.properties文件。
2、登录后页面参数中文乱码:
更改conf/server.xml文件:增加:URIEncoding="UTF-8" useBodyEncodingForURI="true"
如果还不行,在该处增加 relaxedPathChars="|{}[],%" relaxedQueryChars="|{}[],%",可能是特殊字符传参乱码,加上这句话可以解决。
最后在conf/web.xml文件中更改监听和日志编码格式:
加上这些以后乱码问题基本可以解决。
3、页面传参乱码导致中文乱码,中文用户名无法登陆:
更改 bin/catalina.bat 文件中大概216行:
set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%"
set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8"