修正FilesMatch的正则expression式,以防止访问除几个文件以外的所有文件?

什么是正确的Filematch的正则expression式,以防止访问除sysadmin指定的几个文件之外的所有文件?

这是我得到的最接近单个文件。 但不幸的是,这个指令允许访问与foo.php相同的目录中的所有文件。

 <FilesMatch "^(?!foo\.php)$"> deny from all </FilesMatch> 

例如,如果bar.htmbar.htm位于同一目录中, foo.php可以通过www.mysite.com/bar.htm访问它,如果在httpd.conf中设置了上述指令

有人可以给我一个例子,如何防止访问所有,但单个FilesMatch指令下面的文件?

  • foo.php
  • bar.htm
  • 其它/ somestuff.js

拒绝一切 ,然后允许你想要的文件可能更容易。

 Order deny, allow Deny from all <FilesMatch (foo.php|bar.htm|other/somestuff.js)$> Allow from all <FilesMatch>