0

.htaccess ファイルを作成し、ユーザー名とパスワードを正しく認証できました。しかし、htaccess 認証中にキャンセルをクリックすると、「アクセス エラー - 権限がありません」またはサーバー エラー メッセージが表示されます。

まず、エラーコードが何であるかわかりません。私は次のことを試しました

ErrorDocument 400 /400.html

エラー コード 401、403、404、500 も試してみましたが、それでもエラーは解決しません。

私の htacess ファイルは次のようになります。 < files > タグを使用して、さまざまな html ファイルの認証を強制しました。

AuthType Basic
AuthName "prompt"
AuthUserFile /.htpasswd
Require user mike 

保護しようとしているすべての html ファイルに "ErrorDocument" を配置する必要がありますか、それとも保護しようとしているすべてのファイルに対して最後に 1 つの "ErrorDocument" ステートメントで十分でしょうか?

4

1 に答える 1

1

あなたが忘れているかもしれない2つのルールがあります。

  1. エラー ページ自体を .htaccess で保護しないでください。到達可能である必要があります。
  2. ファイルへのパスErrorDocumentは、ドキュメント ルートから数えます。

ルールに従えば、コードは機能します (テストしたばかりです)。これは私の成功したテストに関係するものです:

ファイル:

/protected/.htaccess
/protected/.htpasswd
/401.php

.htaccess

ErrorDocument 401 /401.php
AuthType Basic
AuthName "My Protected Area"
AuthUserFile protected/.htpasswd
Require valid-user
于 2013-02-16T00:53:45.863 に答える