在htaccess身份验证中单击取消时处理错误

时间:2013-02-16 00:21:52

标签: .htaccess

我写了一个.htaccess文件,我可以正确验证用户名和密码。但是当我在htaccess身份验证期间单击取消时,我收到“访问错误 - 未授权”或服务器错误消息。

首先我不确定错误代码是什么。我尝试了以下

ErrorDocument 400 /400.html

我还尝试使用错误代码401,403,404,500,但仍然存在该错误。

我的htacess文件看起来像这样..我使用了<文件>标记以强制执行不同html文件的身份验证。

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

我是否需要为我要保护的每个html文件放置“ErrorDocument”,或者最后只有一个“ErrorDocument”语句就足以满足我要保护的所有文件。?

1 个答案:

答案 0 :(得分:1)

您可能忘记了两条规则。

  1. 错误页面本身必须受.htaccess保护。它必须是可以访问的。
  2. ErrorDocument文件的路径从文档根目录计算。
  3. 如果你遵守规则,代码就可以工作(只是测试它)。这是我的成功测试所涉及的:

    文件:

      

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

    的.htaccess

    ErrorDocument 401 /401.php
    AuthType Basic
    AuthName "My Protected Area"
    AuthUserFile protected/.htpasswd
    Require valid-user