CGI-BBS > サーバ > Apache > Apacheの設置で.htpaccessを使ってBASIC認証したい。


カレッヂ
カレッヂ


質問者 たか  投稿日 2/15(土) 03:32:19
WinNT環境でApach2.0.44を使ってサーバー構築を行っております。
一応、httpの基本動作とphp4.3.0の基本動作確認まで完了し、次にBASIC認証をさせてます
が、ブラウザから「ネットワークのパスワード」枠が出力されます。
userログインファイルは、DOSプロンプトから htpasswd -c パスワードファイル名 ユーザ名
にて設定し、Apache2\bin 内に そのファイルの所在と中身の確認もできました。

しかしながら、ログイン用の枠に設定したパスワードを何度入れても認証されません。

■httpd.confの設定
<Directory "C:/Apache Group/Apache2/htdocs">
    Options Indexes FollowSymLinks MultiViews ExecCGI Includes

#   Options FileInfo AuthConfig Limit

  AllowOverride All

    Order allow,deny
    Allow from all
</Directory>

AccessFileName .htaccess


■.htaccessの中身
-------------------------------------------------------
AuthType Basic
AuthName "soft"
AuthUserFile "C:/Apache Group/Apache2/htdocs/soft"
Require user soft

"C:/Apache Group/Apache2/htdocs/soft"
はBASIC制御させたいディレクトリで、この中に.htaccessが入っています。

■「ネットワークのパスワード」枠の表示
---------------------------------------------
サイト   localhost
領域    soft
ユーザー名(U) [soft    ](デフォルト値としてあらかじめ枠に入って出る)
パスワード(P)   [            ] (入力待ち状態)

これが表示されたということは httpd.conf と .htaccess が正常に読み込まれ
実行されたと考えられますが、問題は認証設定しているのにきかないことです。

そこで、Apache2\bin に作成された パスワードのファイルを開けてみますと
そのファイル名は .htaccess となってました。
確か、コマンドラインでの設定時は htpasswd -c softusers soft
と設定したので、ファイル名は softusers で出来ているのかと思ったのですが違います。
なぜなのでしょう。

で、このファイル内は
soft:$apr1$Ne4.....$1W58WGdl871Zw7gA/07Ry0
となってました。テスト用なので パスワードも soft としてます。

何か設定で間違っているところがあるのでしょうか?
Win系ではこれをやっておかないといけない!といったことがあればお教えください。

プロバイダ参照:
サーバのOS:WINサーバ
パソコンのOS:WinNT系
エディタ:
FTPソフト:
サーバ移転:していない
改造:(未選択)
CGI習熟度:(未選択)

回答者 やまだ  [削除]  投稿日 2/15(土) 23:52:12
.htaccess内
>AuthUserFile "C:/Apache Group/Apache2/htdocs/soft"

>"C:/Apache Group/Apache2/htdocs/soft"
>はBASIC制御させたいディレクトリで、この中に.htaccessが入っています。

AuthUserFileは、パスワードの入った"ディレクトリ"でなく、"ファイル名"ということですけど。
そのファイルは、htpasswdで作ったファイル名で、ファイルのパーミッションに十分気をつけるもの
のはずです。
質問者 たか  [削除]  投稿日 2/16(日) 00:49:14
どうもすみませんでした。

凡ミスでした。
ファイル名にかえたら動きました。

このページは終了したので返信(回答)は書きこめません
 


Web裏技