訪問網頁中文出現亂碼(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這個問題就解決了

 

 

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