Apache 2.4";。。身份验证失败..:密码不匹配“;
我正在Windows Server 2008 R2中运行Apache 2.4。我正在尝试对一个子目录进行密码保护,并在Apache2.0中成功地做到了这一点。升级后,我接受了Apache的建议,并尝试将身份验证配置放在httpd.config中。我允许读取密码文件,一切看起来都正常,但当我测试它时,我得到以下错误: [Mon Apr 01 19:58:36.438476 2013][auth_basic:error][pid 3984:tid 788][client xxx.yyy.254.2:49253]AH01617:用户主机:针对“/restricted/file.zip”的身份验证失败:密码不匹配 但是,我知道我正在发送正确的密码。我的配置见下文,任何评论都很有帮助Apache 2.4";。。身份验证失败..:密码不匹配“;,apache,.htaccess,authentication,.htpasswd,Apache,.htaccess,Authentication,.htpasswd,我正在Windows Server 2008 R2中运行Apache 2.4。我正在尝试对一个子目录进行密码保护,并在Apache2.0中成功地做到了这一点。升级后,我接受了Apache的建议,并尝试将身份验证配置放在httpd.config中。我允许读取密码文件,一切看起来都正常,但当我测试它时,我得到以下错误: [Mon Apr 01 19:58:36.438476 2013][auth_basic:error][pid 3984:tid 788][client xxx.yyy.254.2:
<Directory "C:/www/mydir/restricted">
#AllowOverride AuthConfig
#Order allow,deny
#Allow from all
AuthType Basic
AuthName Restricted
AuthUserFile "C:/www/mydir/passwords/pass"
Require valid-user
</Directory>
<Directory "C:/www/mydir">
Require all granted
</Directory>
<VirtualHost *:80>
ServerAdmin admin@.com
DocumentRoot "C:/www/mydir"
ServerName "fakeurl.com"
ErrorLog "C:/www/mydir/logs/error.log"
CustomLog "C:/www/mydir/logs/accesslog/access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin admin@.com
DocumentRoot "C:/www/mydir"
ServerName "www.fakeurl.com"
ErrorLog "C:/www/mydir/logs/error.log"
CustomLog "C:/www/mydir/logs/accesslog/access.log" common
</VirtualHost>
#AllowOverride AuthConfig
#命令允许,拒绝
#通融
AuthType Basic
AuthName受限
AuthUserFile“C:/www/mydir/passwords/pass”
需要有效用户
要求所有授权
服务器管理员admin@.com
DocumentRoot“C:/www/mydir”
服务器名“fakeurl.com”
ErrorLog“C:/www/mydir/logs/error.log”
CustomLog“C:/www/mydir/logs/accesslog/access.log”通用
服务器管理员admin@.com
DocumentRoot“C:/www/mydir”
服务器名“www.fakeurl.com”
ErrorLog“C:/www/mydir/logs/error.log”
CustomLog“C:/www/mydir/logs/accesslog/access.log”通用
您是否使用“htpasswd”创建密码
httpd-2.4.4中的htpasswd已损坏()
据我所知,该问题特定于httpd-2.4.4中的htpasswd,只有在手动输入密码时才会发生,因此您可以通过执行以下操作之一来解决该问题:
- 在命令行上提供密码(例如“htpasswd-b.htpasswd用户密码”)李>
- 使用httpd-2.4.3之外的htpasswd版本李>
- 使用摘要身份验证而不是基本身份验证(htdigest不受影响)李>
- 等待httpd-2.4.5发布李>
- 在bug报告中应用补丁(这似乎有效)并从源代码重新构建htpasswd
- 我也遇到了同样的问题,在最后一个小时里我都快发疯了。我可以确认Steve关于在命令行中输入密码的建议是有效的——因此在我的例子中,“htpasswd-b passwordfile user password”起了作用
是Apache上的相关错误报告。如果您正在使用,mod_shib和基本身份验证之间存在冲突。您可以使用以下Apache指令解决此问题:
ShibCompatValidUser On
有关详细信息,请参见谢谢-这让我疯狂了一个小时。在如此成熟的应用程序中,这样简单的回归是不可原谅的-(我花了很长时间才将谷歌搜索视为一个可能的问题,因为我的想法与@andylerobinson一样,“在如此成熟的应用程序中,这样简单的回归是不可原谅的。”与其重复答案,不如简单地投票或评论史蒂夫的答案。@NickM我同意,发表评论会更合适。不幸的是,我当时没有足够的信誉在StackOverflow中发表评论,我觉得最好添加对我有效的实际命令和到bug报告的链接。