LAMP架构十六(Apache配置FilesMatch访问控制)【完】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sj349781478/article/details/84718409

十六、访问控制FilesMatch

    <Files>指令提供了基于文件名的访问控制,类似于<Directory>和<Location>指令。它将配对一个</Files>指令。在此配置段中定义的指令将作用于其基本名称(不是完整的路径)与指定的文件名相符的对象。

    <Files>段将根据它们在配置文件中出现的顺序被处理:在<Directory>段和.htaccess文件被处理之后,但在<Location>段之前。请注意:<Files>能嵌入到<Directory>段中以限制它们作用的文件系统范围。

举个例子说明,之前写过一篇关于防盗链的文章,里面用到了filesmatch:

SetEnvIfNoCase Referer "^$" local_ref

SetEnvIfNoCase Referer "www.a.com/.*$"  local_ref

SetEnvIfNoCase Referer "a.com/.*$"  local_ref

<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|jpeg|png|gif|js|css)">    //凡是匹配到连接中以txt/doc等结尾的,进行下面的策略匹配

   Order Deny,Allow         //匹配顺序 deny ,allow

    Deny from all             //拒绝所有

   Allow from env=local_ref         //允许标记为local_ref的Referer

</filesmatch>

<Directory  /data/wwwroot/a.com>

   <filesmatch  "admin.php(.*)">       根目录下有关于admin.php的页面,仅允许本机127.0.0.1访问

   Order Deny,Allow        

    Deny from all            

   Allow from 127.0.0.1

  </filesmatch>

</Directory>

能够看出filesmatch可以比directory更加匹配的更加的精确。
 

猜你喜欢

转载自blog.csdn.net/sj349781478/article/details/84718409