• ベストアンサー

パスワードページ以外からの訪問防止

初心者ですので、失礼があればすみません。 HTMLになるのか分かりませんが、お答え下さい。 パスワードAページとBページがあります。 Aページを経由する以外からの方法で、Bページを表示出来ないようにするにはどのようにすればよろしいでしょうか? (URLを直接入力してページを開く人を未然に防ぐためです。) もしくは、Bページを表示しようとするとAページが表示するにはどのようにすればよろしいですか?

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

  • ベストアンサー
  • sh_hirose
  • ベストアンサー率66% (56/84)
回答No.5

サーバの設定なしで行いたいのであればJavaScriptを使用します。 document.referrer この値がAページ以外ならAページへリダイレクトすればいいと思います。

参考URL:
http://www.htmq.com/js/document_referrer.shtml
muu001
質問者

お礼

参考URLを使わせていただきました。ありがとうございました。

その他の回答 (4)

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.4

まず、Webサーバーの種類を教えてください。 それによって回答が変ってきます。 Apache ですか? IIS ですか? Aページのパスワード認証は、すでにできていたり方法が判っていますか? ならば、その方法を教えてください。 それによっても、回答が違います。 もし Apache なら、一番簡単なのは Basic認証という機能を使用する事で、パスワード入力ページを自分で作らなくとも Apache が面倒をみてくれます。 パスワード無でアクセスさせないページをひとつのディレクトリに集めておけば、それでOK。 ただし商用等で見栄えが重要な用途には不向きかも。 No.3 さんがおっしゃるのも Apache の場合で、ちょっぴり高度な技ですね。

  • kentkun
  • ベストアンサー率35% (1106/3092)
回答No.3

僕も一時写真のホームページを持っていたのですが、写真への直リンクに悩まされていたときに勉強しました。 パスワードページを仮に http://www.abcdef.com/index.html だとすると .htaccessで「参照元(Referer)によるアクセス制限」をすれば便利です。 その中身は下記のようにすれば良いと思います。 SetEnvIf Referer "^http://www.abcdef.com/index.html" ref_ok order deny,allow deny from all allow from env=ref_ok もっと詳しく知りたい場合は下記のページを参考にしてください。 http://www.shtml.jp/htaccess/referer.html

  • elflend
  • ベストアンサー率64% (58/90)
回答No.2

ご利用されているサーバーがCGIが利用可能であればまさしくこれだと思います。 http://docseri.hp.infoseek.co.jp/unLink.html ただ、サーバーがCGI利用可能であってもCGIの設置に関する知識が必要になりますので利用されるのであれば…頑張って勉強してください! ちなみにCGIがサーバーで利用可能かどうかはレンタルされているサーバーの会社のHPに記載されているはずです。

  • katokundes
  • ベストアンサー率22% (492/2217)
回答No.1

HPスペースを無料レンタルしているのであれば、 そのサイトでフォルダーにパスワードつけることができるとフォルダーごとにパスワードができると思いましたが。 ページとフォルダーは違いますから、お尋ねと違いますが。 どのような環境で作っているのでしょうか。 自前サーバーとか。

関連するQ&A