0

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

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

Require valid-user

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

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

使用 .htaccess 的基本身份验证在同一远程服务器上工作正常!

4

2 回答 2

0

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

于 2009-10-12T10:41:33.087 回答
0

上面的代码缺少 AuthDigestDomain 指令,文档说:

该指令应始终指定并至少包含该空间的(一组)根 URI。不这样做将导致客户端为发送到此服务器的每个请求发送 Authorization 标头。除了增加请求的大小之外,如果 AuthDigestNcCheck 开启,它还可能对性能产生不利影响。

但是,我确实通过启用 Apache 模块mod_auth_digest而不是 module解决了这个问题mod_digest

于 2009-10-26T09:06:06.373 回答