我有 WD MyBookLive 2TB,并执行了以下操作:
.htaccess文件是:
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
问题是未启用基本身份验证,我仍然可以访问HTML文件而无需任何身份验证。
此外,似乎 .htaccess文件被忽略即使我在apache2.conf中设置了以下内容:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
在AllowOverride All
Apache版本:2.2.9
似乎 WD MyBookLive 忽略了.htaccess
和.htpasswd
个文件
如何激活基本身份验证?
答案 0 :(得分:1)
所以我只需在我的.htaccess文件中尝试配置,然后获取基本登录表单。
我在Ubuntu 14.04&#34;上找到了文章&#34;如何使用Apache设置密码验证; (https://www.digitalocean.com/community/tutorials/how-to-set-up-password-authentication-with-apache-on-ubuntu-14-04)
我认为这可能是因为你没有安装apache2-utils
。
请尝试下一个命令:
sudo apt-get install apache2-utils
sudo service apache2 restart
答案 1 :(得分:0)
解决方案1:
第1步:安装Apache实用程序包
sudo apt-get更新 sudo apt-get install apache2-utils
第2步:创建密码文件
建议:对于要添加的任何其他用户,请省略-c参数:
sudo htpasswd /etc/apache2/.htpasswd another_user
注意:如果我们查看文件的内容,我们可以看到每个记录的用户名和加密密码:
第3步,配置Apache密码认证
现在我们有了一个包含用户和密码的文件,其格式可以让Apache读取,我们需要配置Apache以在提供受保护的内容之前检查该文件。我们可以通过以下两种方式之一进行操作:直接在网站的虚拟主机文件中,或者将.htaccess文件放在需要限制的目录中。
选项1:在虚拟主机中配置访问控制
第一个选项是编辑Apache配置并将密码保护添加到虚拟主机文件。此选项需要访问配置,该配置并非总是可用,但是只有在您有权访问时才能使用。 首先打开要添加限制的虚拟主机文件。
sudo nano /etc/apache2/sites-enabled/example.conf
身份验证是基于每个目录进行的。要设置身份验证,您需要使用块将要限制的目录作为目标。在我们的示例中,我们将限制整个文档的根
在此目录块中,指定我们希望设置基本身份验证。 -对于AuthName,>选择在提示输入凭据时将显示给用户的领域名称。 -使用AuthUserFile指令>将Apache指向我们创建的密码文件。 -我们将需要一个有效用户>来访问此资源,这意味着任何可以使用密码验证其身份的人都将被允许进入
注意:重新启动Web服务器之前,可以使用以下命令检查配置:
sudo apache2ctl configtest
如果一切都检查完毕,并且您的语法正确,则重新启动服务器以实施密码策略。
选项2:使用.htaccess文件配置访问控制 要使用.htaccess文件启用密码保护,请打开主要的Apache配置文件:
sudo nano /etc/apache2/apache2.conf
找到保存文档根目录的/ var / www目录的块。通过将该块中的AllowOverride指令从“ None”更改为“ All”来打开.htaccess处理:
完成后保存并关闭文件。
接下来,我们需要将.htaccess文件添加到我们希望限制的目录中。另外,我们将限制基于/ var / www / HTML的整个文档根目录(整个网站),但是您可以将此文件放置在您希望限制访问的任何目录中
sudo nano /var/www/html/.htaccess
第4步-确认密码身份验证
要确认您的内容受到保护,请尝试在Web浏览器中访问受限制的内容。您应该看到一个用户名和密码提示,如下所示:
答案 2 :(得分:0)
经过数周的尝试,我的摘要身份验证成功比基本身份验证好。 我在Mook Live上安装了WebDav服务器,然后将PHP文件放入webdav共享文件夹中。 我配置的PHP文件只有读权限。
Here是有关如何在MyBookLive上配置WebDav服务器的教程
答案 3 :(得分:-1)
如果您打算使用.htaccess文件进行基本身份验证。您需要一个如下所示的AllowOverride指令:
isConcurrent
答案 4 :(得分:-1)
激活mod_rewrite:sudo a2enmod rewrite
编辑/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
<Directory /var/www/mywebserver>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
. . .
</VirtualHost>
重启服务:sudo systemctl restart apache2
在/ var / www / mywebserver /中创建.htaccess文件,并在顶部添加以下行,其他行在底部
RewriteEngine on