摘要式身份验证拒绝接受有效凭据

时间:2009-10-12 10:35:45

标签: .htaccess cgi digest-authentication

我正在尝试通过.htaccess文件保护带有摘要式身份验证的文件夹:

AuthType Digest
AuthName "Restricted Area"
AuthUserFile /web/htdocs/www.domain.com/.../.htdigest

Require valid-user

我使用命令“htdigest”创建了密码文件。 一切都在我的本地服务器上工作正常...但不在我的远程服务器(托管网站)上! 即使我输入了正确的密码,浏览器也会显示登录面板!

在远程服务器上,PHP作为CGI而不是作为Apache的模块运行...应该是这个原因吗?有一些解决方法吗?

.htaccess的基本身份验证在同一台远程服务器上运行正常!

2 个答案:

答案 0 :(得分:0)

如果脚本作为CGI运行,这意味着它作为本地用户运行,而不是作为www运行,这可能是问题,是的。 CGI是唯一的选择吗?

答案 1 :(得分:0)

上面的代码缺少AuthDigestDomain指令,关于the documentation说明:

  

此指令应始终如此   指定并至少包含   (此集合)此空间的根URI。   省略这样做会导致这样做   客户端发送授权   发送给此的每个请求的标头   服务器。除了增加大小   请求,它也可能有一个   如果对性能有不利影响   AuthDigestNcCheck已开启。

但是,我已经通过启用Apache模块mod_auth_digest而不是模块mod_digest来解决了这个问题。