关于tomcat9页面部分乱码的处理

最近在升级服务器中,系统从server2012升级到2022,宝塔也从7.0升级到8.5,tomca由8.0升级到9.0,在升级中遇到太多太多的坑,记录一下其中的坑,方便后来者。

1、宝塔8.5装完tomcat9以后,想卸载很难卸载,建议重装系统快,宝塔8.5对tomcat8不是很友好。

2、宝塔8.5应该还是要对java环境变量进行设置才可以,否则无法运行tomcat-web项目。

3、宝塔8.5里面的tomcat9(外面的也一样)设置:

1)设置C:\BtSoft\tomcat_server\tomcat9\bin\catalina.bat文件中增加语句

set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8"

位置如下:

rem TITLE (Optional) Specify the title of Tomcat window. The default

rem TITLE is Tomcat if it's not specified.

rem Example (all one line)

rem set TITLE=Tomcat.Cluster#1.Server#1 %DATE% %TIME%

rem ---------------------------------------------------------------------------

setlocal
set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8"

rem Suppress Terminate batch job on CTRL+C

if not ""%1"" == ""run"" goto mainEntry

if "%TEMP%" == "" goto mainEntry

if exist "%TEMP%\%~nx0.run" goto mainEntry

echo Y>"%TEMP%\%~nx0.run"

if not exist "%TEMP%\%~nx0.run" goto mainEntry

echo Y>"%TEMP%\%~nx0.Y"

call "%~f0" %*

用过其他类似语句,要不卡住,要不没效果

2)在C:\tomcat9\conf\logging.properties中,将log日志中控制台日志编码格式由UTF-8改为GBK,这样控制台就不会乱码,位置如下:

############################################################

Handler specific properties.

Describes specific configuration info for Handlers.

############################################################

1catalina.org.apache.juli.AsyncFileHandler.level = ALL

1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs

1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.

1catalina.org.apache.juli.AsyncFileHandler.maxDays = 90

1catalina.org.apache.juli.AsyncFileHandler.encoding = GBK

2localhost.org.apache.juli.AsyncFileHandler.level = ALL

2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs

2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.

2localhost.org.apache.juli.AsyncFileHandler.maxDays = 90

2localhost.org.apache.juli.AsyncFileHandler.encoding = GBK

3manager.org.apache.juli.AsyncFileHandler.level = ALL

3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs

3manager.org.apache.juli.AsyncFileHandler.prefix = manager.

3manager.org.apache.juli.AsyncFileHandler.maxDays = 90

3manager.org.apache.juli.AsyncFileHandler.encoding = GBK

4host-manager.org.apache.juli.AsyncFileHandler.level = ALL

4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs

4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.

4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 90

4host-manager.org.apache.juli.AsyncFileHandler.encoding = GBK

java.util.logging.ConsoleHandler.level = ALL

java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter

java.util.logging.ConsoleHandler.encoding = GBK

############################################################

3、到这一步基本上乱码解决,但我的页面还是有部分乱码,这时候还需要改系统语言编码(非常关键),如下:

找到电脑设置--时间和语言,点击进入下一个界面

点击语言进入语言设置界面

在语言设置界面,点击管理语言设置

在非Unicode程序的语言框,点击"更改系统区域设置"

勾选beta版:使用Unicode UTF-8提供全球语言支持(U)

在次重新启动tomcat9,页面乱码消失,一切正常

相关推荐
朦胧之3 小时前
AI 编程-老项目改造篇
java·前端·后端
swipe6 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
爱勇宝6 小时前
我做了一个只用来搜歌词的小 App
android·前端·后端
甲维斯6 小时前
用AI还原《坦克大战》并3D化升级!
前端·人工智能·游戏开发
IT_陈寒7 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端
kyriewen8 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
谷子在生长8 小时前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
壹方秘境8 小时前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
神秘面具男8 小时前
HarmonyOS 6.0跨端远程控制
前端·后端
枫树下x8 小时前
NestJS基础框架
前端