Php Htaccess-Http身份验证-为什么这个块会给我造成500错误?

Php Htaccess-Http身份验证-为什么这个块会给我造成500错误?,php,http,.htaccess,authentication,Php,Http,.htaccess,Authentication,我一直在阅读一本似乎是很好的教程 我试图使用它作为一个额外的访问网站cms(举行了可访问的网页根) 当used指向cms索引时,我希望使用这种基本的身份验证形式。一旦用户导航到任何部分,我的默认php身份验证系统就会启动,因此某些用户只能访问cms中的某些功能 但我不明白的是,为什么下面的代码块放在我的.htaccess文件中会导致整个网站产生500个错误 <Files .login> AuthType Digest AuthNAme "Authentication Required

我一直在阅读一本似乎是很好的教程

我试图使用它作为一个额外的访问网站cms(举行了可访问的网页根)

当used指向cms索引时,我希望使用这种基本的身份验证形式。一旦用户导航到任何部分,我的默认php身份验证系统就会启动,因此某些用户只能访问cms中的某些功能

但我不明白的是,为什么下面的代码块放在我的.htaccess文件中会导致整个网站产生500个错误

<Files .login>
AuthType Digest
AuthNAme "Authentication Required"
AuthDigestFile /usr/home/myDomain/includes/htpasswd/admin/.htdigest
Require valid-user
</Files>

AuthType摘要
AuthNAme“需要身份验证”
AuthDigestFile/usr/home/myDomain/includes/htpasswd/admin/.htdigest
需要有效用户
我尝试了一个使用基本访问特性的类似测试,但作为补充,我认为这种方法会更安全一些。而我使用apache中的htpasswd.exe程序创建了一个.htpasswd文件,可以用来验证基本访问权限。这工作正常,但我不知道如何通过.htaccess文件将这种类型的身份验证应用于cms索引

我已经开始创建一个文件,使用apache的htdigest.exe程序创建一个名为.htdigest的文件

其内容如下:

testUser:需要身份验证:cd7h62051449100elk3c463eae6251f5

现在,通过所有这些设置,我已经按照前面提到的文章中的说明,尝试实现一个实例,用户一旦单击其中带有href属性“.login”的链接,他们就会被定向到我的cms(需要身份验证)。以下是作者的解释:

所以没有.login文件,它只是一个将触发 身份验证,因为访问此URL需要用户 认证的

现在由于某种原因,当我尝试加载我站点上的任何页面时,在.htaccess中有这个块,我得到一个500错误,当我实际应该得到身份验证框时

但这是我感到困惑的原因,因为我假设此块只会在用户使用“.login”href单击链接的情况下起作用

我没有添加进一步的块来在身份验证有效时将用户指向索引页,只是添加了这个块和作者提到的另外两个块

有人能解释引起这种反应的原因吗

  • 路径中是否确实有
    myDomain
  • 500错误的原因将写入错误日志文件。它是宇宙中唯一可以找到原因和解释的地方

  • 根据错误日志所述,如果您使用的是Apache2.2.x,请尝试将
    AuthDigestFile
    更改为
    AuthUserFile
    。根据操作系统的不同,您可能还会遇到文件路径差异;跟踪任何新的错误日志消息

    服务器错误日志显示什么?这是windows还是linux服务器?您提到的“htpasswd.exe”听起来像windows,但AuthDigestFile路径看起来像linux路径。此外,如果是linux服务器,文件是否位于正确位置?无效命令“AuthDigestFile”,可能拼写错误或由服务器配置中未包含的模块定义,请参考:
    http://www.myDomain.com/
    @jcmeloni-Meloni,这在日志中很突出?@magic bunnie通过我的主机使用apache服务器,但我自己使用windows,因此引用了exe文件。您好,谢谢您的输入,请查看我在错误日志中的评论。不,它不是字面上的“我的域名”,而是我实际域名的名称。如果没有.comI,我正要发布它,而且
    AuthDigestProvider文件
    可能会有用。谢谢jc,但这不起作用,因为我没有使用基本的身份验证类型,我使用的是如上所述的摘要类型。@dev null居住者请参阅文章作者的引用“如果省略此指令或其值为空,则客户端应假定保护空间由响应服务器上的所有URI组成。”@BlackberryFan我知道;请参阅(这是在2.2中所做的更改)@jcmeloni O我的天哪,我很谦卑:)似乎错误已经消失了,但是需要一些时间来测试身份验证。我可以像
    那样使用它吗(注意获取)?谢谢!