禁止访问具有特定名称的文件夹

时间:2012-05-12 13:11:16

标签: apache .htaccess

亲爱的StackOverflowers,

我正在寻找一种方法来禁止访问特定名称的所有文件夹,我使用我的网络应用程序动态制作文件夹,但其中一些文件夹不被其他人访问。

说我的应用程序制作文件夹: 图片 影片 脚本

我想让所有创建的文件夹脚本无法访问?我该怎么做才能做到这一点?我对htaccess并不熟悉,我知道可以在每个目录中放置一个htaccess文件,但我想限制磁盘读/写以确保应用程序足够快,是否有通用的方法来执行此操作1个htaccess文件?

提前一百万谢谢!

1 个答案:

答案 0 :(得分:4)

使用Apache's <DirectoryMatch> directive,您可以轻松地在服务器级别或VirtualHost级别设置 。但是,您需要访问核心配置文件才能执行此操作。

<DirectoryMatch "(Images|Videos|Scripts)" >
  Order deny,allow
  Deny from all
</DirectoryMatch>

要在.htaccess文件中完成同样的操作,您可能需要在顶层制作RewriteRule

RewriteEngine On
# Match directory names and forbid access with the F flag
RewriteRule  .*(Images|Videos|Scripts) - [F]

上述内容应符合以下请求:

http://example.com/stuff/Images/otherstuff
http://example.com/Images1234
http://example.com/dir/dir/dir/Videos/123.mpg