500错误与.htaccess密码保护

lsmepo6l  于 2023-02-05  发布在  其他
关注(0)|答案(3)|浏览(147)

我正在用apache运行最新的ubuntu。
我有非常简单的html目录,我想使用.htaccess保护。
我正在尝试使用以下工具:

AuthName "Restricted Area"
AuthType Basic
AuthUserFile /var/www/dev/docs/.htpasswd
Require valid-user

在我的.htpasswd文件上,我有:

user:pass

我得到内部服务器错误与此。我一直在努力挖掘,但不知道为什么会发生这种情况。
如果我加上这个:

<Directory "/var/www/dev/docs">
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /var/www/dev/docs/.htpasswd
Require valid-user
</Directory>

无论我做什么都无法登录...
谢谢你,

8e2ybdfx

8e2ybdfx1#

我也有同样的问题。但经过几次尝试和错误,这里的修复。
1.必须使用.htpasswd文件的完整路径。
1.必须用引号将路径括起来“home/username/public_html/subfolder/protected/.htpasswd”
举个例子:

AuthUserFile "/home/username/public_html/subfolder/protected/.htpasswd"
AuthType Basic
AuthName "My restricted Area"
Require valid-user
bvpmtnay

bvpmtnay2#

错误#500只意味着Web服务器不理解.htaccess文件中的某些内容。Apache的错误日志中不会有任何内容,因为此时请求甚至没有被解析。
尝试在.htpasswd文件的路径周围加上引号,并注意一些托管公司,如cough.. godaddy,1&1可能需要几分钟时间才能发现.htaccess中的更改。

AuthType Basic
AuthName "Restricted Area"
AuthUserFile "/home/. . . . ./.htpasswd"
require valid-user
pkwftd7m

pkwftd7m3#

我在Apache/2.4.6(CentOS)上遇到了相同的情况

  1. htpasswd的路径需要取自$_SERVER['DOCUMENT_ROOT']
  2. Apache有一些bug(https://bz.apache.org/bugzilla/show_bug.cgi?id=54735),您需要从控制台设置密码,如下所示:htpasswd -nb username newpassw > <path-to>/.htpasswd
    CentOS 7上Apache 2.4.6中的btw问题仍然存在

相关问题