关于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,页面乱码消失,一切正常

相关推荐
benbenAItalk6 小时前
数字人口播视频的批量生产实践:素材规范、任务编排与质量验收
java·前端·音视频
2601_962885727 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
西瓜太郎12347 小时前
Claude Code、Codex CLI、Gemini CLI 能否共用一枚 Key?先看协议选择矩阵
前端·api 网关·claude code·gemini cli·codex cli
陈随易9 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
水域安全老周9 小时前
水趣钓鱼救生衣专利拆解:两级锁紧如何解决落水人衣分离
java·前端·网络
计算机魔术师10 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing9810 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan10 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
梦想平凡11 小时前
百游棋牌源代码开发搭建教程(五):房间创建、座位分配与请求幂等实现
前端·javascript·数据库·源代码管理
IT_陈寒11 小时前
Redis的Set操作居然能把我的服务整挂了?
前端·人工智能·后端