今日もガクリ('A`)
きっと明日もまたガクリ?('A`)
Firefox 3 : ロケーションバーにマルチバイト文字を入力

Firefox 3 のロケーションバーにマルチバイト文字を入力して、サイトにアクセスすると正しく URL が渡らない。検索エンジンなどで使用すると、一部の検索エンジンで入力した文字列が正しくサイト側に伝わらず文字化けしてしまうという問題が…('A`)

ロケーションバーを見ると、何やら URL がエンコードされている様です…この件で検索してみると、やっぱり同じような問題が見つかりました。about:confignetwork.standard-url.encode-query-utf8 の値を true に変更する事で問題が解決しました

user_pref("network.standard-url.encode-query-utf8", true);

ところが、この問題は半分解決したといった方がいいでしょう。何故なら、この設定はサイト側の URL エンコード処理が UTF-8 の場合しか効果がありません。例えば 緑のgoo に以下の様に文字列を渡してやると、やはり文字化けします 1

http://green.search.goo.ne.jp/search?MT=漢字入力ですよ

入力エンコード指定の URL パラメーターにて、以下の様にエンコードを指定してやれば 緑のgoo に関しては、解決です

http://green.search.goo.ne.jp/search?MT=漢字入力ですよ&IE=UTF-8

サイト側でこの問題を解決する方法もあります。URL パラメーターとして入力された文字列をサイト側で処理すべき文字エンコードに変換してやればいいのです。以下の例は PHP の例です 2

  1. foreach ( $_GET as $key => $value ) {
  2.   echo '1 key: ' . $key . ' value: ' . $value . "<br />\n";
  3.   echo '2 key: ' . mb_convert_encoding( $key, 'UTF-8', 'UTF-8,SJIS,EUC-JP' ) . ' value: ' . mb_convert_encoding( $value, 'UTF-8', 'UTF-8,SJIS,EUC-JP' ) . "<br />\n";
  4. }

他の UA でも試してみましたが、Opear, IE6 は駄目でした。特に Opera 3 は酷く、ロケーションバーにマルチバイト文字を入力してエンターキーを押すと URL エンコードどころか、激しく文字化けし、4 しかもその文字化けしたデータをそのまま URL としてサイトにアクセスします。なので、サイト側で解決しても駄目です

追記

どうも、この問題は思っていたほど根が深いようです。時間がある時に調べてみたいと思います


  1. Google ではエンコード変換しているので文字化けしません
  2. mb_convert_encoding お約束ですが、この関数の3番目のパラメーターには決して AUTO は指定しないように…('A`)
  3. バージョン 9.50 と 9.51 で発生している現象です。9.27 では発生しません
  4. どうやら、JIS 変換してるような感じです…Shift-In/Out のエスケープコードが表示されます
internet, PHP, softwarecomments (0)trackbacks (0) – pingbacks(2) – (12,357)
feel free of the comment please.

trackback URL of this article
QRcode of this article
qrcode:article
more information of this article

post date

2008年06月27日(金) 03:44:19

update

2008年07月04日(金) 04:47:16

tags

, , , , , ,

contents
most viewed (1214956)
categories
archives
recent posts
recent updates
recent comments
recent trackbacks
912T ASUSTeK ASUSTeK Crosshair IV Extreme blog CSS DARK SOULS DARK SOULS 3 Darksouls3 DarksoulsIII DARK SOULS III DISM Euro Truck Simulator 2 Everquest II firefox foobar2000 game Install internet KB2990941 KB3087873 mod panels ui PCゲーム PHP PX-Q3PE Raid skin SoftBank software SpeedFan Spinel Steam TPS trailer truck TvRock TVTest Windows Windows 7 Win Toolkit WordPress インストール ダークソウルズ 初音ミク 窓辺ななみ
mobile
qrcode:home
profile
曇り札幌市中央区 ‘ 曇り
気温: 10℃ ‘ 湿度: 66%
recommends
Valid XHTML 1.0 Transitional Valid CSS X.X
RSS 2.0 RSS 0.92
RDF/RSS ATOM
get Firefox 2 get Opera
ie