我正在尝试将身份验证用于访问apache2中的文档根目录... 这是我的配置文件
<VirtualHost *:80>
ServerAdmin webmaster@localhost
AccessFileName .htaccess
DocumentRoot /home/user/workspace
<Directory />
Options FollowSymLinks
AllowOverride None.htaccess
</Directory>
<Directory /home/vishu/workspace>
Options Indexes FollowSymLinks MultiViews
AllowOverride AuthConfig
Order allow,deny
allow from all
</Directory>
......
......
</VirtualHost>
这是/ home / user / workspace文件夹中的.htaccess文件:
<FilesMatch >
.....
</FilesMatch>
AuthType Basic
AuthName "MY ZONE"
#AuthBasicProvider file
AuthUserFile /home/vishu/workspace/passwordfile
AuthGroupFile /dev/null
Require valid-user
.....
...
Apache出现.htaccess:order not allowed here
错误,我从浏览器收到500错误。
答案 0 :(得分:5)
查看您的AllowOverride
指令。我也有这个问题,但以下配置对我有用:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride AuthConfig Limit
Require all granted
</Directory>
AllowOverride All
可能也会起作用,只取决于你想要允许多少。
查看这两个链接以获取更多信息:
答案 1 :(得分:1)
我不确定为什么你的'''命令不允许在这里'''看到你的htaccess文件中没有Order
指令,但我猜它可能是某种东西在/
目录中,因为您将覆盖设置为None
。
您可以尝试在<Directory />
容器中添加替换,例如:
AllowOverride Limit
答案 2 :(得分:1)
我有同样的问题,这是由于我的主机上的限制,不允许我添加任何“订单允许,拒绝”或其他东西。因此,基本上我必须将所有不允许的内容注释掉才能使其正常工作。
如果这是您的问题,可能想切换主机。