我想知道除了使用.htaccess文件之外,如何禁止访问所有目录。
像
这样的结构<Directory />
Order Deny,Allow
Deny from all
</Directory>
<Directory /folder>
Order Deny,Allow
Allow from all
</Directory>
引发错误500.它只能放在apache conf文件中,对吧?或者我做错了什么?
答案 0 :(得分:1)
目录指令不能用于.htaccess文件(请参阅目录文档的“上下文”部分)。在.htaccess文件中,您可以使用Files或FilesMatch作为节容器或mod_rewrite。假设您被允许使用mod_rewrite(并且您有充分的理由首先使用.htaccess文件,比如说,您不是服务器管理员):
RewriteEngine On
RewriteRule !folder [F]
原则上,这回答了你的问题。虽然你的情况比你让它更复杂,但更有可能。
http://httpd.apache.org/docs/2.2/mod/core.html#directory http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule http://httpd.apache.org/docs/2.2/sections.html
顺便说一下,这个问题可能属于serverfault.com