最近在升级服务器中,系统从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,页面乱码消失,一切正常