web-dev-qa-db-ja.com

htaccess、htpasswdおよびエラー401

Htpasswdに問題があります。

Error.log Apache2でエラーが発生します

ユーザー管理者:「/」の認証失敗:パスワードの不一致

Htaccessファイルの内容:

# Set Access Restrictions

AuthType Basic
AuthName "admin"
AuthUserFile ".htpasswd"
require valid-user

と私のhtpasswdの内容

admin:xxxxx
1
Sourceforest

あなたのコメントから、プレーンテキストパスワードを作成したと思います。 Apacheは.htpasswdのパスワードがMD5アルゴリズムによってハッシュされると想定しているため、Apacheでは機能しません。

.htpasswdファイルを生成するためのオンラインで利用可能ないくつかのツールがありますが、最も簡単なのはApacheに付属しているもので、htpasswdと呼ばれます。 RHEL(Fedora、Red Hat、CentOS)システムでは、httpd-toolsパッケージ(yum install httpd-tools)が必要です。 Ubuntuシステムでは、Apache2-utilsパッケージ(apt-get install Apache2-utils)にあります。 WindowsでXAMPPを使用している場合、xampp\Apache\binフォルダーにあります。

設定済みの.htaccessファイルでhtpasswdを使用するには、htpasswd /protected/.htpasswd userを実行し、プロンプトが表示されたら目的のパスワード(2回)を入力します。次に、/ protected /ディレクトリに.htpasswdファイルを生成します。

2

AuthUserFileのパス全体を含めるようにしてください。ルートディレクトリでこれを行う代わりに、protectedディレクトリを作成することをお勧めします。これらの構成を確認してテストし、機能することを確認しました。

ファイルの場所

/protected/.htaccess
/protected/.htpasswd

.htaccessファイル

AuthType Basic
AuthName "restricted area"
AuthUserFile /protected/.htpasswd
require valid-user

。 htpasswdファイル

user:password

パスワードがMD5'dであることを確認してください。これは tool です。

1
Jordan Neustrom

最後に、パスワードをmd5にハッシュしていません....メモ帳++を使用し、パスワードを単純な文字で入力しました

Htaccessファイルを作成するためのlinuxコマンドを使用して、このチュートリアルに従いました。

enter image description here

今私のhtpasswdの私のコンテンツ:

admin:$apr1$Oy4JMDb0$yb00PbzV9mrq07lPivrzL1
1
Sourceforest