プロが教えるわが家の防犯対策術!

Webサイトを作成しているのですが、特定のページからの誘導のみ特定のWebサイトを表示する方法はありますでしょうか?

WebサイトAからリンク ⇒ WebサイトBを表示
上記のような流れを現在作成しております。

WebサイトBのURLを直接タイプして表示させない方法、
WebサイトBのURLを知られない方法などでも問題ございません。

Web初心者で、html以外はあまり詳しくないのですが、お知らせいただけますと幸いです。

A 回答 (3件)

どのページから訪問したかは、HTTP要求ヘッダのHTTP_REFERERにありますから、それを参照してページを生成するのが通常の方法です。


 それ以外に、cookieやQUERY_STRING、PATH_INFOといった手法があります。それぞれに、長所・短所があります。

HTTP_REFERER --referrer---は、意図的に隠したり偽証できる。セキュリティソフトにはこれをブロックするものがある。検索エンジンによると、これを提出するものがあるので検索エンジンからは隠せないことがある。検索エンジンに対してROBOT.TXTなどでクロールを制限する必要がある。

cookie cookieの取得提出を拒否しているユーザーが存在する。

QUERY_STRING/PATH_INFOとも、URLの一種なので限界がある。

 もっとも良いのは、basic認証などでパスワードによる制限をかけることでしょう。

 それぞれ、ここで説明するには膨大な量になるし、適切ではありませんので検索してください。
    • good
    • 0
この回答へのお礼

御礼が大変遅くなりました。
それぞれのリスクも丁寧にお知らせいただきましてありがとうございます。
まずはReferrerで対応いたしました。
何か発生した場合は、他の方法でも試したいと思います。

お礼日時:2012/05/12 02:09

referrer は、セキュリティの知識があって、「referrer なんて送ってやらない!」って思っているひとも多くて、ブラウザで referrer を送らない設定にしているから、そういう人がページを参照できないよ。



それは、自業自得だからよしとして、
referrer は偽装できるから全面的には信用できないよ。


やるとしたら、

サイトA のサーバ上で動的にユニークな unique_code を発行して、
サイトA のページで、

<a href="http://site_b.example.com/somepage.php?unique_co …サイト B へのリンク</a>

のようなリンクで、ページをウェブブラウザへ送信すると同時に、
その unique_code をサイト B へ通知する。

という方法がいいよ。

サイト B では、サイト A から通知された unique_code のクエリ文字列を持つ時だけ、ページを表示すれば Ok!

あとは、unique_code の有効期限を調整しておしまい。
    • good
    • 0

リファラでの制限を掛ければOKです。


http://kensakuyoke.web.fc2.com/referer-ht.html
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!