Kimura Fuyuki
fuyuk****@hadal*****
2004年 8月 28日 (土) 10:06:39 JST
At Fri, 27 Aug 2004 07:13:46 +0900, shelarcy <shela****@capel*****> wrote: > > つまり、今必要なのは IRI に備えて utf-8 にしてない IE の場合だけリファラー > をみて shift-jis で判断させるようにすることではないでしょうか? IRIというのはわかりませんが、IE6がURIを「UTF-8のエスケープしない形」で 送信しているらしいというのが問題です。私はGaucheはこれでも大丈夫だと思っ ていたのですが、それは勘違いでした。uri-decodeは文字単位で動いているの で(バイト単位でなく)。 で、悪いのはどっちかと調べてみたのですが、結局よくわかりませんでした。 RFC2396のBNFは次のようになっているので、これだけ見るならIE6が悪いです。 query = *uric uric = reserved | unreserved | escaped reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | "," unreserved = alphanum | mark mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")" escaped = "%" hex hex hex = digit | "A" | "B" | "C" | "D" | "E" | "F" | "a" | "b" | "c" | "d" | "e" | "f" が、"URI and non-ASCII characters"の説明を読むと自信がなくなってきます。 もしかすると、non-ASCIIの世界で「文字」というのが何を意味するのかよく 理解されていないのかもしれません。 -- 木村 冬樹