• ベストアンサー

CGIの隠しファイルについて

以下KENT様のサイトについてCGIに詳しいかた、教えてください。http://www.kent-web.com/pwd/protect.html 強化タイプ3を説明通りに作成し問題なく表示されたのですが、 隠しファイルのURLを直打ちするとIDなど聞かれずに表示されてしまいます。 私はパターン2の方で作成しmemberフォルダを隠しファイルとしているのですがfile1から3.htmlは普通に見えてしまいます。 このプログラムだとfile1から3.htmlにはアクセス制限をかけられないということでしょうか? 入り口は制限できても肝心の中身が表示されていると思うのですが、詳しいかたどなたかご意見をお願いいたします。

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

  • ベストアンサー
  • koma30007
  • ベストアンサー率87% (173/198)
回答No.2

WEB PROTECTは、入り口でユーザー認証をするCGIです。 個別のファイルにアクセス制限をかけているのでは ないので、直接アドレスをファイル名まで正しく入力 すればアクセスできます。 ただし、きちんと管理すればファイル名が他人に知ら れる事はほとんどないはずです。 「フォームボタン記述例(1)」または「フォームボタン 記述例(2)」の方法でリンクすれば、IDとパスワードが アドレス欄に表示されることもありません。 後は、検索ロボット避けのタグを各HTMLファイルに 記述して置くと良いです。 http://www.somethingfine.com/br/searchlab/note02.html ※「META タグによる方法」参照 ただし、これも完全な方法ではないという事ですので、 どうしても心配な場合は、memberフォルダ内に「.htaccess」 を設置すると良いです。 プチポケサーバーなら「.htaccess」の設置が許可 されています。 @PAGESの方は「.htaccess」のユーザー認証コント ロールのみ許可されているということですので、 出来ないかもしれません。 http://www.shtml.jp/htaccess/referer.html ※「SetEnvIf」の行で「protect.cgi」を設置した アドレスを途中まで入力してください。 ※2行目以降から4行目までは同じです。 【例】 ・次の場所に「protect.cgi」を設置した場合 http://username.comet-blue.net/cgi-bin/protect/protect.cgi SetEnvIf Referer "^http://www\.shtml\.jp" ref_ok 一行目を↓のように書き換える SetEnvIf Referer "^http://username\.comet-blue\.net/cgi-bin/protect/" ref_ok ※memberフォルダ内のリンクは、すべて「protect.cgi」 を通してください。(直リンクするとアドレスが知られて しまいます。なお、上記のように「.htaccess」を設置 した場合は、「protect.cgi」を経由していない アクセスは拒否されます。) @PAGESでmemberフォルダ内の各HTMLファイルに アクセス制限をしたい場合は、「WEB PROTECT」 の代わりに「.htaccess」のユーザー認証を使用する と良いかもしれません。 http://www.shtml.jp/htaccess/basic.html

sevenof
質問者

お礼

回答どうもありがとうございます! やはり強化タイプ3では直リンクできてしまうんですね。 かなりの初心者なのでkoma30007様のアドバイスをゆっくり読ませていただきます。 検索ロボット避けの方法もあるなんて知りませんでした・・・! 色々とURLも載せていただき、どうもありがとうございました!! 大変助かりました♪

その他の回答 (1)

  • kame999
  • ベストアンサー率21% (631/2955)
回答No.1

サーバによって出来たり出来ない場合もあります サーバを書いた方が アドバイスを受け取りやすいと 思いますが

sevenof
質問者

補足

情報不足ですみません。 @PAGES http://atpages.jp/と プチポケサーバー http://puchi.pocket-server.com/の2つで 試しましたが両方直リンクでアクセスできてしまいます。 両サーバーCGI利用可です。 アドバイスだけでも結構ですのでお力を貸していただければと思います。 宜しくお願いします!!