NARUSE, Yui さんは書きました:
> しかし、ちょっと試して気付いたんですが、
>> URI.escape("http://exmaple.com/foo bar?a=b=c;d=e#hoge#fuga")
> => "http://exmaple.com/foo%20bar?a=b=c;d=e%23hoge%23fuga"
> この # ってエスケープしちゃっていいんですかねぇ。

URI.escapeはURI文法に従ってエスケープするものではないです。
(名前が悪いっていう話なんですが……。)