红联Linux门户
Linux帮助

Linux中通过jsvc自启动tomcat乱码问题

发布时间:2017-02-12 09:53:07来源:linux网站作者:rubik2010
Linux部署tomcat时,通过自带的jsvc注册自启动服务,日志文件内容/中文目录/中文文件名出现乱码,而通过命令行执行./startup.sh又正常的情况:
 
原因:
1、系统本身不支持中文,自行解决;
2、系统默认编码不是UTF-8,而手动执行默认使用当前用户配置的编码方式;
3、未设置环境变量(LANG,LC_ALL,CATALINA_OPTS),指定编码方式
 
解决方法:
1、确保Linux系统支持中文编码(如UTF-8),通过locale命令查看系统编码:
Linux中通过jsvc自启动tomcat乱码问题
2、针对日志文件内容乱码问题,可设置CATALINA_OPTS变量,指定编码方式为UTF-8
编辑文件(根据实际情况)/etc/init.d/tomcat,在文件头部加上:
CATALINA_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"
并注释掉文件中的一下内容:
Linux中通过jsvc自启动tomcat乱码问题
修改后:
Linux中通过jsvc自启动tomcat乱码问题
3、针对中文目录/中文文件名乱码问题,可设置LANG和LC_ALL变量,指定编码方式未UTF-8
编辑文件(根据实际情况)/etc/init.d/tomcat,在文件头部加上:
export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
重新通过service tomcat start启动tomcat,乱码问题解决。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/28347.html