我们通过使用Charter的网站托管来建立Plesk网站。用它来创建一个简单的开发网站。
我正在尝试使用.htaccess / .htpasswd密码保护网站。
无论我做什么,我都会收到这个错误:
#
# AUTHENTICATION
#
### BASIC PASSWORD PROTECTION
AuthUserFile /etc/httpd/HTTP/.htpasswd
AuthName "Please Login"
AuthType basic
<Limit GET POST>
Require valid-user
</Limit>
我对Parallels Plesk不太熟悉 - 获得他们的支持就像拔牙一样。
我不确定问题是什么。我收到了验证框(我注意到它没有我的“请登录”消息,但是......
这是.htaccess文件的代码:
{{1}}
非常感谢任何帮助或引导正确的方向。感谢提前!!
答案 0 :(得分:2)
您确定文件.htpasswd位于/ etc / httpd / HTTP /目录中。否则使用以下命令创建1
sudo htpasswd -c /etc/apache2/.htpasswd heather
Here你要一步一步配置:
答案 1 :(得分:1)
只需按命令生成/etc/httpd/HTTP/.htpasswd文件:
# htpasswd /etc/httpd/HTTP/.htpasswd UserNameYouWant
它要求您输入密码并使用用户UserNameYouWant生成密码文件
答案 2 :(得分:0)
如果您认为该文件位于正确的位置,则可能是权限问题。
使用以下方法检查文件所有权和权限:
ls -la /path/to/file
确保运行apache进程的文件/组能够读取文件。
您可以通过运行以下方式检查流程的所有者:
ps -ef | grep apache
您应该在最左侧的列中看到该流程的所有者。
如果文件所有权是问题,那么使用chown更改所有权:
sudo chown username: /path/to/file
您需要以root / sudo身份执行此操作,因为非root用户无权正常更改所有权。
用户名将用户名改为用户名
后答案 3 :(得分:0)
我遇到了同样的问题。对我而言,.htpasswd
存储在/home/username/.htpasswds
目录下。我通过递归确保目录是可执行文件来解决该错误:
chmod +x -R /home/username/.htpasswds
答案 4 :(得分:0)
如果您使用的是CentOS
,那么如果文件不在Web服务器根目录之外,则SELinux
可能会阻止对该文件的访问。 (这就是我发生的事情。)
将文件移动到Web服务器的根目录,然后使用以下命令恢复文件SELinux
的上下文:
mv /path/to/.httpasswd /var/www/html/
restorecon -v /var/www/html/.htpasswd
答案 5 :(得分:-2)
我在Rackspeed服务器上遇到了同样的问题。这是因为passwd
/home/company/.htpasswds/project/