访问网页中文出现乱码(Tomcat)

概述:

      把一个简单的web项目部署到机器上后  在浏览器中访问显示中文乱码,一开始以为是浏览器编码问题,调试后发现跟前端没有关系。

解决办法:

      网上找了一些方法,大概有以下几种办法:

 1、修改tomcat中的conf/server.xml,在<Connector中加入URIEncoding="utf-8",举例如下:

<Connector connectionTimeout="20000"
     port="8080" 
     protocol="HTTP/1.1"
     redirectPort="8443" 
     maxPostSize="0"
     URIEncoding="UTF-8"/>

  2、修改tomcat中的bin/catalina.bat,增加一行:

set “JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -Dfile.encoding=UTF-8”

  3、修改conf/web.xml,在<server>标签中 增加fileEncoding,我的web.xml中位置大概在103行,具体如下:

 <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
        	<param-name>fileEncoding</param-name>
        	<param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

 

解决情况: 

    当时试了1、2,都是失败,最后试了第3种方法  结果是成功的。

    第三种情况中的fileEncoding大概是,如果不写 默认用系统的字符编码方式去解析,可能那台机器刚好没有相应的字符编码,所以出现中文乱码。在tomcat中指定fileEncoding为utf-8这个问题就解决了

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章