人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPでリダイレクトを掛けた時のことで、質問です。

例えば、

Aというサイトに、
<?php
header("Location: http://B.com/");
?>
とします。

そして、
Bというサイトには、
<?php
header("Location: http://C.com/");
?>
とします。

この時、Cというサイトのアクセス解析などには、Bというサイトから来たことは分かると思うのですが、Aサイトを経由していることも分かるものなのでしょうか?
また分かる場合もありますか?

詳しい方、教えてください。

よろしくお願い致します。


●質問者: com111
●カテゴリ:インターネット ウェブ制作
✍キーワード:PHP アクセス解析 サイト リダイレクト
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● y-kawaz
●23ポイント

Proxyならまだしもリダイレクトの場合は、A,Bどちらのサイトからもリダイレクトされてきたということは分かりません。CにとってはいきなりCに来た時と全く同じです。


唯一それらしい情報で分かるとすれば、Aのリダイレクトページへのリンク元URLが Referer で取得できます。

ですが、それも直接Cへのリンクを経由してきたものなのか、AやBからリダイレクトされてきたかどうかの区別はできません。

◎質問者からの返答

つまり、Aサイトからリンクされてきた、ということが分からない、ということでしょうか?


2 ● mystandardjp
●23ポイント

リダイレクトされたサイトは、Cのアクセス解析を見ても分からないはずですが

Cのアクセス解析に表示されて分かるのは、Aのサイトだと思います。

ただしAのサイトもリダイレクトされていた場合は分かりません。

基本的なイメージとしては

クリックされたサイトがCのアクセス解析にのると思います。


ナニワのシステム開発屋さん

http://www.my-standard.co.jp/


3 ● kn1967
●22ポイント

「分かる場合もあり」です。


header("Location: によるリダイレクトの動作は、

要求)ブラウザ ⇒ A.com ⇒ B.com ⇒ C.com
返信)C.com ⇒ B.com ⇒ A.com ⇒ ブラウザ

ではなく、

要求)ブラウザ ⇒ A.com
返信)A.com ⇒ B.comへ飛んでと返答される ⇒ ブラウザ

要求)ブラウザ ⇒ ページを要求 ⇒ B.com
返信)B.com ⇒ C.comへ飛んでと返答される ⇒ ブラウザ

要求)ブラウザ ⇒ ページを要求 ⇒ C.com
返信)C.com ⇒ ページが返信される ⇒ ブラウザ

という順番に処理が流れています。

(かなり大雑把です。実際は各段階でさらに細かな通信を行ってます。)


ここまでの話で単純に返答すると、

ブラウザがリファラ(どこから飛んできたかという情報)を、

返す状況であっても、リファラの内容は1つ前だけなので、

2つ前の状況は判らないという事になります。


ただし、アドレスに何らかの引数を渡すなどしてあれば、

それだけで追いかける事が可能になったりする場合がありますし、

プロクシのように要求と返信を監視するようなものや、

アクセス解析のようなものが介在していても、

どこを経由しているかが判ってしまうなど、知るための技は複数あります。

(それらの技術を端的に説明するのは難しいため、詳細は割愛させてください。)


個人的に実施できるかどうかは別問題ですが、警察がプロバイダなどと

連携すれば、誰が、いつ、どこから、どのように、接続しているかを、

辿る事は難しい事ではなく、インターネットの仕組み上、

隠し通すほうが難しいと覚えておいたほうがよろしいかと思います。


4 ● submarine22
●22ポイント

どうしてもそういう情報が必要ならばリダイレクトを掛ける際に情報を付加すれば分かると思います。

サイト作成者側の対処法、ということになりますが。

<?php
header("Location:http://B.com/?refferer=".$_SERVER['PHP_SELF']);
?>
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ