iframe内にリンクを設置して、そのリンクからページ移動が行われた場合、リンク先へ渡されるrefererはiframeのURLになる。
という認識だったが、
結構重要なことなので自分で実験してみた。
ページ全体
<body>
<iframe src="if.html"></iframe>
</body>
iframe
<body>
<a href="to.html" target="_top">リンク</a>
<iframe src="to.html"></iframe>
</body>
リンク先
<body>
<script>
document.write(document.referrer);
</script>
</body>
こんな感じで実験。
iframe内にはリンクを設置したが、追加実験でsrc属性でのリファラーも確認した。
リンク先ページではdocument.referrerを書き出すだけ。
実験の際に最初ローカルアドレスで表示したらリファラーが表示されなかった。
少なくともFirefoxはWEBサーバー上のURLじゃないとリファラー送らないみたいね。
まあ、結果は当初の認識どおりリンク先ページでえられるリファラー情報はiframeのURLだった。