- 締切済み
Basic 認証ができない
Basic認証を行いたいのですが、「ユーザー」と「パスワード」を入れても認証を通過できません。 [.htaccess]ファイルには下記のように記述しました。 AuthUserFile /home/test/.htpasswd AuthGroupFile /dev/null AuthName "Secret Area" AuthType Basic require valid-user <Files ~ "^.(htpasswd|htaccess)$"> deny from all </Files> [.htpasswd]ファイルには下記のように記述しました。 test:KNBKgzgRhzAOk パスワードは下記URLで作成しました。 http://www.futomi.com/lecture/htaccess/htpasswd.html なにが問題なのでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- tkmojo
- ベストアンサー率50% (105/207)
AuthUserFile /home/test/.htpasswd このディレクトリ指定は正しいでしょうか? サーバーによってディレクトリ表記は変わります。 調べ方がわからなければサーバーに問い合わせてみましょう。 また、一例として、サーバー側の設定の可能性もあります。 例えばベーシック認証はサーバーの管理画面から行うタイプのサーバーの中には 勝手に上げたhtaccessやhtpasswdは正しく機能しない者があったと記憶しています。
- magid
- ベストアンサー率73% (49/67)
.htpasswdに記述するパスワードを、符号化しないテキストにしてみてください。つまり、たとえば次のように記述して、パスワード入力時に「pass」と入力してみてください。 test:pass どういうわけか、Basic認証の解説ページにはどこも符号化したパスワードを記述するように書かれているのですが、Apacheのマニュアルを読むとテキストでそのまま記述することとなっています。ですからご利用のサーバがApacheでしたら符号化する必要はありません。
- imopro
- ベストアンサー率35% (58/163)
明らかに間違っている部分は見当たりませんね. とすると,(自分に)考えられるのは以下の2点. (1)AuthUserFile /home/test/.htpasswd "home"が自身のホームディレクトリだと思いますが,"public_html"などではないですか? もしくは,(サーバごとに違う気がしますが)より上層のフォルダから絶対パスで指定するように決められていませんか? つまり,"/virtual/tree1975/home/test/.htpasswd"などです. (2)ユーザ名とパスワードの入力間違い …これはありえないと思いつつ,念のため書きます. ユーザ名:test パスワード:"KNBKgzgRhzAOk"を暗号化する前の記号列 と入力していますよね."KNBKgzgRhzAOk"をそのまま入力してませんよね…(当然ですけど)