2009-07-26 81 views

答えて

10

$ _SERVER ['HTTP_REFERER']変数から取得できます。

+0

私はこれを認識していますが、httpヘッダやその他のテクニックはありますか?私はリファラーがこのhttpヘッダーを手動で変更できると信じているので、使用中の他のテクニックがあると思いました。 –

+4

リファラーは私が信じるブラウザによって送られる。そして、いずれにせよ、誰かがそれを修正すると、それを修正しようとしており、あなたは本当に何もできません。不完全な世界、unfourtunatley。 –

+0

チャチャは正しいです、これはあなたが対処しなければならないものです。 – hobodave

3

チャチャのポイントに追加するには、リファラーURLのクライアントサイドハッシュ部分をキャプチャするかどうかはわかりません(ときどき)。私。クライアントが "http://www.domain.com?x=3#y=5"から来た場合、$ _SERVER ['HTTP_REFERER']には「http://www.domain.com?x=3」のみが含まれ、ハッシュ部分はサーバーに送信されません。

ハッシュパート(正式にURLフラグメントと呼ばれます)をキャプチャしたい場合は、参照ページがあなたのOWNページである場合、つまりそのページにコードを書くことができる場合にのみ行うことができます。そうであれば、AJAXリクエストを参照元をキャプチャする統計Webサービスに送信し、URL全体を送信します(javascriptはURLのその部分にアクセスできます)。

+0

私はいくつかの調査を行ったと付け加えますが、「一部のブラウザ」がハッシュを送信するという主張がありますが、私のテストでは、「現代的」なブラウザ(IE 6+、Safari 2+、 Firefox 2+、Opera 9+、Chrome)はハッシュを送信します。 – eyelidlessness

関連する問題