在.htaccess中设置mp4和png文件的权限

首先,我是Apache .htaccess的全新function。 我有一个服务器,必须允许用户只能潜入mp4和PNG文件。 所以,我一直在阅读Apache HTTP Server文档,根据它说的,我已经把这个添加到了我的.htaccess中:

<filesMatch "\.(png|mp4)$"> Order Allow,Deny Allow from all </filesMatch> 

因为据我所知,这意味着“对于每个文件,如果它的扩展名是PNG或MP4,允许每个人抓住它,否则拒绝访问”。 很明显,我错了,因为这禁止我访问任何文件/文件夹允许我访问文件夹和HTML文件(以及当然PNG和MP4文件)无论如何。 那么,如何才能访问只有PNG和MP4文件? 另外,我想知道如何使filter忽略大小写。

谢谢。

编辑:首先 – 忘了说,我需要允许本地访问一切(即拒绝必须只为非本地主机)。 我真的不知道这是默认行为还是需要以某种方式表示。 而且,当我进行testing的时候,我有一个损坏的文件,这就是为什么我总是被禁止访问所有的东西。 我已经更新了这个post。

尝试

 Order Allow,Deny <filesMatch "\.(?i:png|mp4)$"> Allow from all </filesMatch> 

?i:部分应该允许不区分大小写的匹配,并且将该命令放在FilesMatch之外使其拒绝没有明确允许的所有内容。

终于find解决办法了:

 Order Deny,Allow Deny from all Allow from 127.0.0.1 <filesMatch "\.(?i:png|mp4)$"> Order Allow,Deny Allow from all </filesMatch> 

有了这个,我告诉“默认情况下,禁止访问所有内容,如果文件是PNG或MP4types(是的,?i:有效地忽略大小写),允许从任何地方访问它。

请注意,我必须覆盖httpd.conf中的所有AllowOverride None条目为AllowOverride All,以便实际考虑.htaccess(之前被忽略)。