0

ログアウトページで私はの使用を見てきました

       $http_referer=$_SERVER['HTTP_REFERER'];
       header('Location :'.$http_referer);

このヘッダーリダイレクトページはどこにあり、http_referrerは何のために使用されますか

4

5 に答える 5

3

一部のクライアントは、どこから来たのかを示すリファラーヘッダーを送信します。問題のコードは、クライアントをそのページにリダイレクトします。

ただし、すべてのクライアントがヘッダーを送信するわけではないことに注意してください。一部のブラウザでは、リファラーヘッダーを無効にできます。また、HTTPSを介して送信されることはめったにありません。ヘッダーが空の場合は、適切なデフォルトの動作があることを確認してください。

于 2012-11-17T12:37:19.507 に答える
0

Http-Refererを使用すると、ユーザーが以前にどのページにいたかを確認できます。たとえば、ユーザーがオンhttp://www.google.comになっていて、ページへのリンクをクリックすると、リファラーにが表示されますhttp://www.google.com

于 2012-11-17T12:35:00.120 に答える
0

リファラーヘッダーは、ユーザーがアクセスしたページを示すためにブラウザーから送信されます。たとえば、サイトへのリンクをクリックしたり、フォームを送信したりします。

まったく存在しないか、他のものが含まれている可能性があります。たとえば、一部のファイアウォールは、(かなり疑わしい)「プライバシー」の理由でヘッダーを削除します。ブラウザは、HTTPS=>HTTP遷移中にもそれを削除します。


ただし、あなたの場合、ログアウトページには自分のサイトからのみアクセスできる可能性があります。したがって、リファラーが存在するかどうかを簡単に確認し、この場合はそれを使用できます。空の場合は、たとえばホームページにリダイレクトします。

$redirect_to = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'index.php';
header('Location: ' . $redirect_to);
于 2012-11-17T12:37:13.070 に答える
0

Http Referer は、ユーザーがページにリダイレクトされるページのアドレスを示します。

php.net manualによると、HTTP_REFERER は、ユーザー エージェントが現在のページを参照したページ (存在する場合) のアドレスです。これは、ユーザー エージェントによって設定されます。すべてのユーザー エージェントがこれを設定するわけではなく、機能として HTTP_REFERER を変更する機能を提供するユーザー エージェントもあります。要するに、本当に信用できない。

于 2012-11-17T12:40:23.383 に答える
0

www.xyz.com/abc/text.php のような URL の場合、リファラーには次のデータがあります。次のようにエコーします。

echo $http_referer=$_SERVER['HTTP_REFERER'];

それはwww.xyz/abcを印刷しています

このリンクにアクセスしました: http://www.electrictoolbox.com/php-http-referer-variable/

それでおしまい。

于 2012-11-17T12:47:12.797 に答える