禁止访问除2个目录和index.php中的文件之外的所有文件

时间:2012-08-16 09:55:30

标签: .htaccess

目前我有这个:

<Files *.php>
  Order Deny,Allow
  Deny from all 
</Files>

<Files index.php>
  Order Allow,Deny
  Allow from all
</Files>

除了index.php之外,我怎么能允许每个人访问其他两个目录中的文件?

文件结构如下:

<dir1>
<dir2>
<dir3>
index.php

所有访问者都应该看到index.php,<dir1><dir2(其中包含所有文件)

2 个答案:

答案 0 :(得分:0)

您可以使用mod_rewrite(see documentation here),将这些行添加到.htaccess文件中:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^(dir1|dir2)/ [OR]
RewriteCond %{REQUEST_URI} !^index.php$
RewriteRule .* - [F]

如果有人试图访问不在dir1或dir2或index.php文件中的文件,这将抛出403禁止错误。

答案 1 :(得分:0)

<dir3>中创建一个htaccess文件并将其放入其中:

Order Deny,Allow
Deny from all