2011-06-05 220 views
19

我尝试配置我的Apache.conf文件以拒绝某个类别的列表,但我想允许该类别中的特定文件。 看来,目录规则比“文件”规则“更强大”,所以当同时使用时 - 我无法访问该特定文件。Apache - 如何拒绝目录,但允许该目录中的一个文件

这是我尝试:

<Directory /var/www/denied_directory> 
    order deny,allow 
    Deny From All 
</Directory> 

<Files safefile.php> 
    Order Allow,Deny 
    Allow from All 
</Files> 

回答

20

它完美,如果它被正确配置:

<Directory /var/www/denied_directory> 
     Order allow,deny 
     <Files test.php> 
      Order deny,allow 
     </Files> 
    </Directory> 
+0

这并没有为我工作,导致403禁止 – 2017-05-02 19:31:23

3

把你的文件,指示您的目录指令中。

5

在Apache的2.4,与良好的措施的环境变量进行附加试验:

参见:Require Directive

<Directory "/wikis/foswiki"> 

    Require all denied 

    # Allow access to toplevel files ending in .html (in particular index.html) only 
    # (comment out if you don't care for this) 

    <Files ~ "\.html$"> 

     <RequireAll> 
      Require all granted 
      Require not env blockAccess 
     </RequireAll> 

    </Files> 

</Directory> 
相关问题