[PHP-users 19257]PHPによる HTTP認証について
IT化推進センタ<大野>
ohno3 @ head.hitachi-hec.co.jp
2003年 12月 8日 (月) 15:02:44 JST
PHP-usersの皆さん、はじめまして。
PHPを勉強して半年弱の初心者です。
どうしてもひとつ解決出来ないため、すみませんが教えて下さい。
―――――――――――――――――――――――――――――
サーバ環境
―――――――――――――――――――――――――――――
● OS Turbo Linux
● Apache 1.3.27
● PHP 4.3.1
● PostgreSQL 7.2.2
―――――――――――――――――――――――――――――
経 過
―――――――――――――――――――――――――――――
header()関数を使って認証ウィンドウを表示させ、パスワード
ファイルの代わりにPostgreSQLを使ったDB認証処理をさせよ
うとしています。
認証が必要なページにBasic認証用のPHP変数である
● PHP_AUTH_USER
● PHP_AUTH_PW
を用い、認証ページ内でBasic認証の判定処理を行いまして上手
く動作しましたのでプログラム上は何等問題ありませんでした。
―――――――――――――――――――――――――――――
質 問
―――――――――――――――――――――――――――――
しかし、プログラム単体では何等問題ないものの認証されないと
表示したくないデータ(gif, jpeg, pdf等など、拡張子.PHP以外
のもの)がURLを指定するともろに見えてしまいます。
これを上手く見せない方法はありませんでしょうか?
(Javascriptでソースの非表示やら右クリック禁止でURLを
隠したものの、これでは芸がありませんし、ソースの暗号ソ
フト購入では意味がないので・・・)
―――――――――――――――――――――――――――――
勝手な思いつき
―――――――――――――――――――――――――――――
URL指定でモロに見えないように、一般的なBasic認証で
gif, jpeg, pdf等などが入ったディレクトリだけにApache
の制御ファイル「.htaccess」を置いて単純なパスワードを
設定し、PHPプログラムと「.htaccess」をうまく組み
合わせて(?)何とかコントロール出来ないでしょうか?
試しに.htaccessを設置したところ、PHPよりBasic認証が
優先して判定されてしまうようでした。
以上、ご教示いただければ幸いです。
PHP-users メーリングリストの案内