我正在尝试对一个目录进行密码保护,并且在目录中有两个文件,它们应该对其进行密码保护:
HTACCESS:
###Contents of .htaccess:
AuthUserFile /var/www/html/path/to/my/directory/.htpasswd
AuthName "Protected Files"
AuthType Basic
Require user admin
HTPASSWD:
###Contents of .htpasswd
admin:oxRHPuqwKiANY
密码也是admin,但无论我尝试什么密码,它总是错误的。它会立即再次要求输入密码!
这个配置有什么问题?
发布于 2012-04-05 15:14:17
这个问题几乎总是因为apache不能读取.htpasswd文件。有四个原因浮现在脑海中:
()加密,所以它看起来像是你在Linux上创建的文件,它可能是好的。某些类型的加密仅在某些平台上有效,如果有疑问,请尝试切换到MD5。
您可以在Apache错误日志中找到有用的消息。
我的赌注在3号上。
发布于 2014-12-11 07:29:32
我在使用MAMP时遇到了类似的问题,这是因为我是手动创建.htpasswd的。解决方案是在终端中使用htpasswd
命令:
htpasswd -bc .htpasswd someuser somepass
这将创建与我的.htaccess文件很好地配合使用的.htpasswd文件,如下所示:
AuthType Basic
AuthName "This site is in alpha and requires a password."
AuthUserFile "/Applications/MAMP/htdocs/mywebsite/.htpasswd"
require valid-user
发布于 2013-06-27 09:26:27
您可能会看到来自父文件夹的密码保护,而不是您期望的文件夹。
如果启用了/etc/apache2/ sites的文件夹中只有一个文件,请检查其中是否有站点文件夹的部分,如下所示:
<Directory /var/www/mysite.com>
AllowOverride All
</Directory>
否则,如果它有一个文件作为您的站点名称,如:
/etc/apache/sites-enabled/YOUR_SITE_NAME_HERE.conf
改为编辑该文件,并确保存在
AllowOverride All
在那里面。这是最重要的部分!如果只想允许最小值,请指定:
AllowOverride AuthConfig
而不是。
https://stackoverflow.com/questions/10015081
复制相似问题