• 締切済み

アクセス制限につきまして

こんにちは CGIにアクセス制限をつける方法で悩んでいます。 例えば、CGIのパラメータをPATH_INFOで渡す場合、 http://...../cgi-bin/xxx.cgi/引数 といった呼び出し方ができますが、 http://...../cgi-bin/xxx.cgi/aaa とした場合と、 http://...../cgi-bin/xxx.cgi/bbb とした場合とで別々のパスワードをかけることは可能でしょうか? 単純にhttp://...../cgi-binに対してパスワードをかけるのなら、.htaccessを使ったBASIC認証で十分なのですが、引数別にパスワードを設けたい場合に、なにか便利な方法はないものでしょうか? CGIそのものはperlで書いています。 よろしくお願いします。

みんなの回答

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

<Files> ディレクティブや <FilesMatch> ディレクティブ は .htaccess にも書けるみたいですが、それでもうまくいかないんでしょうか? あるいは ErrorDocument ディレクティブで CGI に処理させる方法は、PATH_INFO の代替手段として使えないんでしょうか? # 私は PATH_INFO を使った事なくてできるはずかどうかも知らないんですが...

  • lesstia
  • ベストアンサー率45% (44/96)
回答No.1

受け取った引数のif文内で制御すればよいのではないでしょうか? if ( $ENV{"PATH_INFO"} eq 'aaa' ) { $pass='aaapass'; } else if ( $ENV{"PATH_INFO"} eq 'bbb' ) { $pass='bbbpass'; } というような感じで。

titokani
質問者

補足

お返事ありがとうございます。 $passに値を代入したあと、いったいどうすればよいのでしょうか・・・・。

関連するQ&A

専門家に質問してみよう