tomcat的编码集file.encoding和URIEncoding的设置

最近遇到一个问题:项目在本地windows系统下部署没有问题,但部署到linux系统下的时候就不能够解析了。

后来查了一下资料是编码集问题。

解决tomcat编码集问题有2处。

第一处:也是最常见的,修改server.xml的中端口的编码集为UTF-8,例如:

tomcat的编码集file.encoding和URIEncoding的设置_第1张图片


或者



userBodyEncodingForURI="true"的意思是:根据响应该请求的页面的request.setCharacterEncoding参数对数据进行的重新编码,不同的页面可以有不同的重新编码的编码。即响应编码得根据服务设置编码一致。

URIEncoding="UTF-8"是对所有GET方式的请求的数据进行统一的重新编码。这里设置的编码集为UTF-8。


如果上诉修改仍没能解决问题,那么很可能是文件解析错误。tomcat的文件解析编码集flie.encoding是跟操作系统有关系的,一般情况下liunx的中文编码集为GBK。

第二种:修改cataina.sh(linux系统)/cataina.bat(windows系统)文件,在开头加上如下语句:

(主要是设置-Dfile.encoding=UTF-8)


你可能感兴趣的:(tomcat,linux,URIEncoding,file.encoding)