Tomcatは過程の中のいくつか技巧を使います.


  • url中国語住所の文字化け
    理由:
    tomcatはデフォルトではurl伝送時にiso 8859-1で符号化されます.
     
    ソリューション1:
    get伝送パラメータを使用する場合、パラメータの中の中国語をurl形式に変換します.つまり、urlEncodeとurlDecodeを使って伝送します.このようにすると、中国語を%で始まる符号に変換してurlで伝送します.
    この方法を使う時、2点に注意します.
    1.フロントではurlencodeを使い、楽屋ではurldecodeを使う.
    2.urlencodeを使用する内容はパラメータが空です.くれぐれも注意してください.彼は等号などの記号を変えます.ですから、まずパラメータを変えてからスペリングしたほうがいいです.urlをつなぎ合わせてから変えるのではないです.
     
    ソリューション2:
    tomcatを配置し、url伝送中に対応する中国語の符号化を使用する.一般的に国内ではgbkやgb 2312が好きです.個人的にはutf-8の使用を勧めています.
    tomcat/conf/server.xmlファイルで、次の行を見つけました.
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
    この行は8080ポートを使ってhtmlの要求を受信するという意味です.ここではいくつかのパラメータを加えて異なる効果を設定できます.
     
    URIEncoding=「UTF-8」はurl伝送時のurlコンテンツの符号化フォーマットを設定します.
    comppression=「on」圧縮機能を開く
    comppressitionMinSize=「2048」は圧縮された出力内容のサイズを有効にします.この中はデフォルトで2 KBです.
    noComppressitionUserAgents=「gozar,trviata」は以下のブラウザに対して、圧縮を有効にしません. 
    copressable MimeType="text/html、text/xml"圧縮タイプ
     
    文字化けを解決するには、以下に変更すればいいです.
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
     
    ページをもっと早く開けたいなら、コンテンツ圧縮機能をオンにします.もちろん、閲覧もこの圧縮をサポートすることが前提です.
  • logsログ中国語文字化
  • catalina.shを修正します
    JAVA_OPTS="-Dfile.encoding=UTF-8"