ブラウザってハッシュ部を除去したリファラを送信すると思っていたんだけど、IE の場合、XMLHttpRequest なリクエスト送るとハッシュ部も含んだリファラが送信される。
適当なhtml 作って、Firefox / Chrome / IE 使ってアクセスしてサーバログ確認した(一部割愛)。IE のリファラに #test1
が記録されている。
【Firefox 31.0】 [27/Aug/2014:01:57:42 -0400] "GET /misc/1.html HTTP/1.1" 200 418 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0" [27/Aug/2014:01:57:47 -0400] "GET /misc/2.html?1409119069542 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0" [27/Aug/2014:01:57:50 -0400] "POST /misc/2.html?1409119072054 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0"
【Chrome 37.0】 [27/Aug/2014:01:58:28 -0400] "GET /misc/1.html HTTP/1.1" 200 418 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.94 Safari/537.36" [27/Aug/2014:01:58:35 -0400] "GET /misc/2.html?1409119117129 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.94 Safari/537.36" [27/Aug/2014:01:58:37 -0400] "POST /misc/2.html?1409119119512 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.94 Safari/537.36"
【IE 10】 [27/Aug/2014:01:59:05 -0400] "GET /misc/1.html HTTP/1.1" 200 418 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" [27/Aug/2014:01:59:11 -0400] "GET /misc/2.html?1409119152972 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html#test1" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" [27/Aug/2014:01:59:13 -0400] "POST /misc/2.html?1409119154924 HTTP/1.1" 200 28 "http://app-mgng.rhcloud.com/misc/1.html#test1" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)"
IE10の開発者ツールでネットワークキャプチャしてみた。ハッシュ以降がそのまま送信されている。
「IE XMLHttpRequest location.hash referer」なんかで検索しても特にヒットしなかったからメモがてら残しておく。
セキュリティ的に問題あるかどうかは...不明。