.htaccess 和 .htpasswd

.htaccess 和 .htpasswd

我有这个项目,有前台和后台。我的登录文件很简单,如果登录名和密码在我的数据库中,那么我就会被引导到后台的一个页面,否则我就进不去。
我可以毫无问题地登录后台,但我想保护后台和目录。

我正在尝试锁定我的后台办公室,.htaccess这样我就无法访问后台办公室目录,但我也无法再登录。

这是我的两个文件。

内容.htaccess

Deny from all 
Options -Indexes


AuthType Basic
AuthName "KW"
AuthUserFile /.htpasswd
Require valid-user

内容.passwd

root:passwordhere

答案1

AuthUserFile /.htpasswd

除了@Glorfindel 的回答(.htpasswdvs .passwd)中提到的“拼写错误”之外,传递给指令的参数AuthUserFile应该是绝对文件系统路径,而不是文档根目录相对 URL 路径,就像您在这里使用的一样。

我的答案有关 ServerFault 的相关问题参见我的答案StackOverflow 上有一个类似的问题,其中有更详细的内容。

HTTP 身份验证错误通常是由于使用错误的密码文件文件路径引起的。

但是,您还需要删除Deny from all第一行的 Apache 2.2 指令。默认情况下,在 Apache 2.4 上,这将覆盖该Require指令并使用 403 Forbidden 阻止所有访问 - 禁止输入密码。

答案2

我不确定这是你帖子里的错别字还是你的系统里的错别字,但是

AuthUserFile /.htpasswd

指向一个名为 的文件.htpasswd,并且您的帖子提到了.passwd

相关内容