2

当尝试使用 .htaccess 和 .htpasswd 对页面进行密码保护时,我会转到我保护的页面并输入用户名和密码。问题是我加密的密码不是我必须输入的密码。而是加密的密码。

例如:

lol:noitcS2m.5F6.

lol作为用户名和noitcS2m.5F6.密码输入,它让我进入。

但是,如果我使用我加密的密码,它就不起作用。谁能向我解释我做错了什么?我安装了 XAMPP 1.8.0、Apache 2.4.2 和 PHP 5.4.4。

我的 .htaccess 文件包括以下内容:

AuthType Basic
AuthName "restricted area"
AuthUserFile C:/xampp/htdocs/pass/.htpasswd
require valid-user

它位于C:/xampp/htdocs/dl/

此外,如果我AuthUserFile是,/dl/.htpasswd那么它会给我错误 500。

4

1 回答 1

0

万一有人可能需要指导 (对于 APACHE 2.2 和 GREATER/Current XAMPP)

转到您的默认 XAMPP 文件夹,然后转到apache/bin/error.log。该文件包含 localhost 中的 Apache 文件上发生的所有错误 - 它使事情更容易诊断。

示例(我的一个):

[auth_basic:error] [pid 408:tid 1772] [client 127.0.0.1:4077] AH01617: user go_admin: authentication failure for "/HTAccessible/test/London/": Password Mismatch, referer: http://localhost/HTAccessible/test/London/

再次运行该目录,然后滚动到文件底部以查看显示的错误消息,以便 StackOverflow 可以更好地帮助您。


可能的解决方案

还有阿兰·蒂姆布洛。我最近在 Windows XAMPP 上的 crypt(base64()) 加密方法也遇到了问题——看过 Apache 网站后,也有人建议使用这种方法。

'{SHA}' . base64_encode(sha1($password, TRUE)); //which works

或者,您可以打开命令提示符(开始菜单->附件->命令提示符)并执行以下方法(因为您直接使用 Apache,它应该始终正确加密):

此处描述的方法适用于 htpasswd

于 2013-08-25T13:39:56.230 回答