对于Ubuntu 14.04上的网站,我有一个如下目录结构,运行apache 2.4.7:
/websites/mywebsite/index.htm
/websites/mywebsite/private.htm
/websites/myqwbsite/folder/privatefile.ext
/websites/mywebsite/folder/subfolder/publicfile.ext
在网站的Apache配置中,我有
<Directory /websites/mywebsite/>
AllowOverride Limit
Require all granted
</Directory>
我想在站点文件夹中使用.htaccess文件,以使private.htm和privatefile.ext文件为Require all denied
,但其他所有文件都被授予。
我尝试了以下两个.htaccess文件:
/websites/mywebsite/.htaccess:
<FilesMatch (private.*.htm)$>
Require all denied
</FilesMatch>
/websites/mywebsite/folder/.htaccess
:
Require all denied
/websites/mywebsite/folder/subfolder/.htaccess
:
Require all granted
但是,apache为/websites/mywebsite/.htaccess
如何使用apache 2.4兼容配置(即我不想加载mod_authz_compat并使用旧样式配置)来实现我想要的功能?
答案 0 :(得分:4)
在网站的apache配置中,您必须扩展AllowOverride属性。添加:FileInfo和AuthConfig。或者设置&#34; AllowOverride All&#34;
我有同样的问题,用此配置修复:
<Directory /websites/mywebsite/>
Options +FollowSymLinks +SymLinksIfOwnerMatch
AllowOverride FileInfo AuthConfig
</Directory>