linux下乱码问题

今天在新服务器的tomcat上跑项目的时候 tomcat控制台乱码!
servlet接收参数乱码。

经常要看日志所以在/home目录下写了个脚本

[root@template ~]# cd /home/sh/
[root@template sh]# ll
总用量 4
-rwxr-xr-x 1 root root 54 616 18:08 showtomcatlog.sh
[root@template sh]# less showtomcatlog.sh 
 tail -f /usr/local/tomcat7/logs/catalina-daemon.out 
showtomcatlog.sh (END) 

权限改为755 以后看日志只要执行这个脚本

控制台乱码解决办法
1.尝试修改tomcat的编码

[root@template sh]# vim /usr/local/tomcat7/conf/server.xml
/8080 找到这一行 添加如下  URIEncoding="UTF-8" 
 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8" 
               useBodyEncodingForURI="true" 
               enableLookups="false"/>

改了之后没有效果

2.尝试修改tomcat 配置文件

[root@template sh]# vim /usr/local/tomcat7/bin/catalina.sh 

242行左右
#JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`"
保留上面注释复制增加一行
JAVA_OPTS="-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"

还是没卵用

3.终于看到一个靠谱一点的建议。修改系统文件

[root@template sh]# vim /etc/sysconfig/i18n
原来文件如下
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

修改第一行为
LANG="zh_CN.UTF-8"
SYSFONT="latarcyrheb-sun16"

在修改为 “zh_CN.UTF-8″ 之前可以使用locale -a 查看服务器是否支持该编

其实早应该想到。之前、在Xshell、putty、SSH Secure Shell Client 等等客户端设置GBK时才不乱码。改了之后客户端要设置成UTF-8

至此乱码问题完美解决。整理下写个日志希望对有需要的童鞋有帮助。感觉设置tomcat配置文件还是有作用的。之前乱码是一串问好?????设置完后是乱码的汉字。改了i18n后乱码解决。

今早发现原来问题没有解决
情况如下,昨天改了编码之后再tail 看日志没有乱码了。但是重启了tomcat之后又出现乱码。 开机自启动不会乱码。手动重启就会出现乱码?
tomcat手动重启后乱码。tomcat重启后乱码

标记一下,待解决

上午忙去了没理它,下午无缘无故自己好了!不再乱码?神奇!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值