管理画面やクローズドのサイトからリンクを辿るときは、URL 自体を知られたくないのでリファラを変えたい、または、消したい。
そんなときのために、直接リンクをクリックする前にワンクッション入れるのが目的。
Opera、Safari、Google Chrome、Firefox、IE で動作確認済み。
Opera、Safari、Google Chrome は、data:text/html;charset=utf-8, 方式でリファラを消す。
※参考:Operaでリファラ消し :: てくてく糸巻き を参照。
Firefox、IE は、JavaScriptでMETA Refreshをdocument.write() 方式でリファラを消す。
※参考:リファラ実験 - referrer test を参照。
第一パラメータで、URL を渡せば、リファラ消しリンクを表示するページへ直接移動することができる。
(※これが、本来のリンククッションの使い方で URL を入力できるようにしているのは検証用、または、URL 作成用。)
この パラメータの URL は URLエンコードする必要がある。現在使用している環境が、mod_rewrite と Apache 1.3 の組み合わせのため、本来は、2回 URLエンコードかける必要がある。
この組み合わせに、CakePHP が加わったのが原因かは調査していないが、3回 URLエンコードをかけないと正常に動作しない。
※参照:URLエンコード with mod_rewrite in Apache 1.3 - Minase's Blog - FYA