dポイントプレゼントキャンペーン実施中!

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. …

なにが問題なのでしょうか?

A 回答 (3件)

AuthUserFile /home/test/.htpasswd



このディレクトリ指定は正しいでしょうか?
サーバーによってディレクトリ表記は変わります。
調べ方がわからなければサーバーに問い合わせてみましょう。

また、一例として、サーバー側の設定の可能性もあります。
例えばベーシック認証はサーバーの管理画面から行うタイプのサーバーの中には
勝手に上げたhtaccessやhtpasswdは正しく機能しない者があったと記憶しています。
    • good
    • 0

.htpasswdに記述するパスワードを、符号化しないテキストにしてみてください。

つまり、たとえば次のように記述して、パスワード入力時に「pass」と入力してみてください。

 test:pass

どういうわけか、Basic認証の解説ページにはどこも符号化したパスワードを記述するように書かれているのですが、Apacheのマニュアルを読むとテキストでそのまま記述することとなっています。ですからご利用のサーバがApacheでしたら符号化する必要はありません。

参考URL:http://httpd.apache.org/docs/2.2/ja/howto/auth.h …
    • good
    • 1

明らかに間違っている部分は見当たりませんね.


とすると,(自分に)考えられるのは以下の2点.

(1)AuthUserFile /home/test/.htpasswd
"home"が自身のホームディレクトリだと思いますが,"public_html"などではないですか?
もしくは,(サーバごとに違う気がしますが)より上層のフォルダから絶対パスで指定するように決められていませんか?
つまり,"/virtual/tree1975/home/test/.htpasswd"などです.

(2)ユーザ名とパスワードの入力間違い
…これはありえないと思いつつ,念のため書きます.
 ユーザ名:test
 パスワード:"KNBKgzgRhzAOk"を暗号化する前の記号列
と入力していますよね."KNBKgzgRhzAOk"をそのまま入力してませんよね…(当然ですけど)
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!