论坛首页 Java企业应用论坛

Tomcat5的中文参数编码问题解决方案

浏览 3775 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-03-31  
    我们在使用Tomcat应用服务器时,为了更好的支持URL地址中的中文参数问题,我们需要做如下的配置来确保应用程序接受到参数不乱码。比如我的系统采用了UTF-8的编码方式,那么如果直接传递中文参数,需要在tomcat进行如下设置:

1.如果单使用tomcat,不整合apache
    我们需要修改server.xml文件的如下行:
    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>

    注意URIEncoding="UTF-8"的部分,即将URI的编码设置为“UTF-8“,这样就不会有问题了;


2.整合tomcat和apache后的设置
    刚开始我没有整合的时候传递的中文参数可以很好的解决,后来整合apache后,却出现乱码了,绕过apache后是正常的,所以问题出现在apache或apache和tomcat的通信上,经过baidu,好不容易找到答案。修改server.xml文件中的如下行:
    <Connector port="8009"
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" URIEncoding="UTF-8" />

    这出现apache和tomcat的通信上,由于我这里的整合是采用JK,tomcat使用的是ajp13协议,所以,需要在他们的通信阶段来处理编码,即代码中的URIEncoding="UTF-8"部分。


    以上是我在处理tomcat的中文参数时遇到的问题,记下来以备速查:-)
   发表时间:2008-08-11  
楼主辛苦啦,被我查到啦,我说加了个apache搞的这么麻烦,到现在问题总算都解决啦。
0 请登录后投票
   发表时间:2008-08-11  
楼主辛苦啦,被我查到啦,我说加了个apache搞的这么麻烦,到现在问题总算都解决啦。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics