重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

特定のURLからのアクセスがあったら、そのページが表示されないJavaScriptがわかりません。
referrer を取得して・・・ということだけはわかっていますが、なにせ初心なものでそれ以上わかりません。

・リファラを取得する
・指定したURLと合致すれば、そのページを開かない
・指定したURL以外の場合は、そのページを開く

よろしくご教授お願いいたします。

A 回答 (2件)

少々気になったので …


>Javascript とは、どこで動くプログラミング言語でしょうか?
>クライアント側(ブラウザ)であって、サーバ側ではございませんね

HTTPサーバーがjavascriptやvbscriptなどを解釈してくれるのであればサーバー側でも実行されますよ
Perlだってスクリプトだし MicrosoftのASPのサーバーサイドコードをjavascriptで書けないこともないです … 実用的かどうかは別として

本題について
サーバの環境変数が取得できる環境なら
var sReferer = Request.ServeVariables("HTTP_REFERER");
といった具合で取得できます

Ano.#1氏の回答にもあるように これはリンク元ページの情報です

特定のユーザーを認識したいのであれば REMOTE_ADDRなどを参照するようにするのではないかと思います
これでも万全ではありませんが … Poxyサーバー経由などで変わってしまうから
お邪魔しました m(__)m
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/11/06 22:48

こんにちは。



Javascript とは、どこで動くプログラミング言語でしょうか?
クライアント側(ブラウザ)であって、サーバ側ではございませんね。

ではサーバには、一切サーバ側で実行されるプログラミング言語で記述されているファイルが無いとします(ソースに Javascript によるロジックが書かれててもよい)。この時、ある Web クライアントから Web サーバに対してあるページを取得する要求が発行されたとき、Web サーバはどの様に振る舞うと思いますか?

当然、要求されたページを無条件で提供するわけです。なぜなら、接続元(IP やホスト名)の情報によりページ内容を変えるか要求を拒否するか、などといったプログラムは、あくまでサーバ側で実行されるロジックになるからです。

Javascript の referrer は、リンク元の URI であって、接続元の情報ではございませんよ。

接続元の情報や接続元のセッション管理を利用したいのであれば、Java や PHP などをお勉強しましょう。


参考 URL に、referrer の説明と Javascript で利用できる情報に関するページを上げておきます。Good Luck.

参考URL:http://www.scollabo.com/banban/jsindex/sample/sa …
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/11/06 22:43

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