• ベストアンサー

特定のURLからのアクセスがあったら表示されない。

特定のURLからのアクセスがあったら、そのページが表示されないJavaScriptがわかりません。 referrer を取得して・・・ということだけはわかっていますが、なにせ初心なものでそれ以上わかりません。 ・リファラを取得する ・指定したURLと合致すれば、そのページを開かない ・指定したURL以外の場合は、そのページを開く よろしくご教授お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

少々気になったので … >Javascript とは、どこで動くプログラミング言語でしょうか? >クライアント側(ブラウザ)であって、サーバ側ではございませんね HTTPサーバーがjavascriptやvbscriptなどを解釈してくれるのであればサーバー側でも実行されますよ Perlだってスクリプトだし MicrosoftのASPのサーバーサイドコードをjavascriptで書けないこともないです … 実用的かどうかは別として 本題について サーバの環境変数が取得できる環境なら var sReferer = Request.ServeVariables("HTTP_REFERER"); といった具合で取得できます Ano.#1氏の回答にもあるように これはリンク元ページの情報です 特定のユーザーを認識したいのであれば REMOTE_ADDRなどを参照するようにするのではないかと思います これでも万全ではありませんが … Poxyサーバー経由などで変わってしまうから お邪魔しました m(__)m

ame-sanc
質問者

お礼

今回の場合は「特定のユーザー」ではなく「リンク元」で考えています。 万全でないのもわかっていますが、少しでも対処しないといけないので検討しています。 ご回答ありがとうございました。

その他の回答 (1)

  • Redpython
  • ベストアンサー率56% (9/16)
回答No.1

こんにちは。 Javascript とは、どこで動くプログラミング言語でしょうか? クライアント側(ブラウザ)であって、サーバ側ではございませんね。 ではサーバには、一切サーバ側で実行されるプログラミング言語で記述されているファイルが無いとします(ソースに Javascript によるロジックが書かれててもよい)。この時、ある Web クライアントから Web サーバに対してあるページを取得する要求が発行されたとき、Web サーバはどの様に振る舞うと思いますか? 当然、要求されたページを無条件で提供するわけです。なぜなら、接続元(IP やホスト名)の情報によりページ内容を変えるか要求を拒否するか、などといったプログラムは、あくまでサーバ側で実行されるロジックになるからです。 Javascript の referrer は、リンク元の URI であって、接続元の情報ではございませんよ。 接続元の情報や接続元のセッション管理を利用したいのであれば、Java や PHP などをお勉強しましょう。 参考 URL に、referrer の説明と Javascript で利用できる情報に関するページを上げておきます。Good Luck.

参考URL:
http://www.scollabo.com/banban/jsindex/sample/sample_221.html,http://www.res-system.com/item/401
ame-sanc
質問者

お礼

>Javascript の referrer は、リンク元の URI はい、接続元ではなくリンク元でいいのです。ご回答ならびにご提供ありがとうございました。

関連するQ&A