Tomcat日志中文乱码怎么解决?


本文摘自PHP中文网,作者零下一度,侵删。

Linux系统中文语言乱码,是很多小伙伴在开始接触Linux时经常遇到的问题,而且当我们将已在Wndows部署好的项目搬到Linux上运行时,Tomcat的输出日志中文全为乱码(在Windows上正常),看着非常心塞,那么我们应该怎么解决呢?

  

               系统中文乱码

               Tomcat输出日志中文乱码

 系统环境

  • CentOS 7.0 64位

  • jdk-8u11-linux-x64.

  • apache-tomcat-8.5.16

解决步骤:

   1.安装中文语言包

        先查看系统是否有安装中文语言包

       # locale -a (列出所有可用的公共语言环境的名称)

        

    若发现以上几项,说明系统已安装中文语言包,无需再安装,那这几项代表什么意思呢?

        {语言代号}_{国家代号}.{字符集}

        zh是中文的代号、CN是中国的代号、gb18030,gb2312,utf8是语言字符集

        那么每一项可以通俗理解为 “你是说中文的,你在中国,语言字符集是gb18030/gb2312/utf8”

        如果没有发现以上几项,则手动安装中文语言包

       # yum install kde-l10n-Chinese (大概11M)

   2.修改i18n国际化和locale.conf本土化配置文件

      在修改配置文件之前,我们先看看当前系统语言环境

# locale

         

 ("en_US.UTF-8"按照上面的内容可以理解为“你说英语,你在美国,语言字符集为UTF-8”) 

    每项的意思分别为 :

      LANG:当前系统的语言

LC_CTYPE:语言符号及其分类

      LC_NUMERIC:数字

      LC_COLLATE:比较和排序习惯

       LC_TIME:时间显示格式

      LC_MONETARY:货币单位

      LC_MESSAGES:信息主要是提示信息,错误信息, 状态信息, 标题, 标签, 按钮和菜单等

      LC_NAME:姓名书写方式

      LC_ADDRESS:地址书写方式

      LC_TELEPHONE:电话号码书写方式

      LC_MEASUREMENT:度量衡表达方式

     LC_PAPER:默认纸张尺寸大小

     LC_IDENTIFICATION:对locale自身包含信息的概述

     LC_ALL:优先级最高变量,若设置了此变量,所有LC_* 和LANG变量会强制跟随它的值

     我们看到虽然安装了中文语言包但本机的语言环境并不是中文,先修改i18n配置文件

     # vim /etc/sysconfig/i18n

      添加如下两行代码

      LANG="zh_CN.UTF-8"
      LC_ALL="zh_CN.UTF-8"

     

    # source /etc/sysconfig/i18n

    再修改 locale.cnf配置文件

    # vim /etc/locale.conf

阅读剩余部分

相关阅读 >>

CentOS7安装完毕后无法联网的解决方法

CentOS7无法连接ssh

securecrt中文显示乱码解决方案

linux securefx中关于乱码问题

CentOS7的root权限不够怎么办?

linux中字符乱码解决方法介绍

CentOS7无法重启网络怎么解决

linux中运行windows中编写的文件出现乱码

linux安装oracle出现界面乱码

linux中解压zip文件出现乱码的解决方法有哪些

更多相关阅读请进入《CentOS7》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...