您现在的位置是:网站首页 > 代码编程 > JAVA开发JAVA开发

【原】Linux环境下tomcat控制台乱码解决方案

不忘初心 不忘初心 2019-02-20 围观() 评论() 点赞() JAVA开发

简介:由于云服务器快要到期了,所以新购了一台服务器,将工程迁移过去了,运行发布都没什么问题,可是查看日志的时候却发现控制台出现了乱码,所有打了中文注释的地方,几乎全都是????第一反应是项目中的编码不对,遂检查了spring的encodeFilter,没发现有什么不对<filter><filter-name>encodingFilter</filter-name>&l

由于云服务器快要到期了,所以新购了一台服务器,将工程迁移过去了,运行发布都没什么问题,可是查看日志的时候却发现控制台出现了乱码,所有打了中文注释的地方,几乎全都是????

Linux环境下tomcat控制台乱码解决方案

第一反应是项目中的编码不对,遂检查了spring的encodeFilter,没发现有什么不对

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

立马又检查了tomcat的配置文件,是否追加了URIEncoding="UTF-8",也没有发现什么不对

<Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>

实在么有办法了,只有祭出大招:更改catalina.sh文件

打开catalina.sh文件,加入一行代码:

JAVA_OPTS="$JAVA_OPTS -Djavax.servlet.request.encoding=UTF-8 -Dfile.encoding=UTF-8 -Duser.language=zh_CN -Dsun.jnu.encoding=UTF-8"

JAVA_OPTS="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"

如下图所示:

Linux环境下tomcat控制台乱码解决方案

至此,问题得到解决!!!

上面两行代码亲自测试过,任意一行都可以生效!!!

tomcatlinux乱码控制台

很赞哦! ()

文章评论

  • 请先说点什么
    人参与,条评论

请使用电脑浏览器访问本页面,使用手机浏览器访问本页面会导致下载文件异常!!!

雨落无影

关注上方公众号,回复关键字【下载】获取下载码

用完即删,每次下载需重新获取下载码

若出现下载不了的情况,请及时联系站长进行解决

站点信息

  • 网站程序:spring + freemarker
  • 主题模板:《今夕何夕》
  • 文章统计:篇文章
  • 标签管理标签云
  • 微信公众号:扫描二维码,关注我们