2017-09-05 6 views
0

私の質問を読む前に、HTTP_REFERERをクライアントブラウザでスプーフィングまたは無効にすることができます。私はユースケースを気にしませんし、私がテストしているブラウザはリファラー情報を確実に渡します。場所:ヘッダーが設定されていないようです。HTTP_REFERER

私の質問はこれです:私のクライアントから、その後

<?php 
echo "Referred by \"" . $_SERVER['HTTP_REFERER'] . "\""; 

:私はpage2.phpと呼ばれる第二のファイルを作成

<?php 
header("Location: page2.php"); 

私はpage1.phpというファイルを作成しますブラウザ私は電話:

http://test-me.co/page1.php

と私はあることをpage2.phpから結果の出力を期待しています: "http://test-me.co/page1.php"

で呼ば

が、次のように代わりに、それはノーリファラー情報を表示します。

誰かがrefererが空である理由を教えてもらえますか?

ありがとうございます!

答えて

3

refererには、ユーザーが最後に訪問した実際のページが含まれます。 URL example.com/a.htmlをアドレスバーに入力してすぐに/b.htmlにリダイレクトすると、実際にはa.htmlにアクセスしたことはありません。その前にあなたが「来た」ページはありません。リダイレクトページをリダイレクトした後、任意のリファラを表示するには

は、どこからか、すなわち

a.html --link--> b.html --redirect--> c.html 

をリンクされている必要があります次にc.htmlに、あなたはリファラとしてa.htmlを参照してくださいね。このチェーンをb.htmlから開始する場合は、リファラーはありません。

関連する問題