设置限制到文件夹后htaccess问题

时间:2014-03-03 18:38:06

标签: file .htaccess directory

我有一个要求,我需要拒绝访问文件夹(localhost \ uploads \ video)。我通过在localhost的htacess中应用以下规则得到了这个:

RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost/ [NC] 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost.*$ [NC] 
RewriteRule \.(|avi|mp4)$ - [F,NC]

场景1 - 如果我尝试通过在浏览器中键入地址straighforward来尝试访问resoruce(主要是.avi文件),它可以正常工作,这是消息: 禁止您无权访问此服务器上的/video/23/videoname.html。此外,尝试使用ErrorDocument处理请求时遇到500内部服务器错误错误。这没关系

场景2 - 在应用tis规则的情况下,如果我尝试点击我主页中导致视频的任何链接,我也会收到与场景1相同的消息,这不是我想要的。我想当我通过主页访问时(通过点击avi链接),这条消息就不会出现。

我怎样才能以这种方式完成这项工作?我想阻止直接访问,但我想保持它正常工作,如果这是从主页执行...

此致 以列

1 个答案:

答案 0 :(得分:0)

你的正则表达式似乎是URI模式匹配的问题。将您的规则更改为:

RewriteCond %{HTTP_REFERER} !(www\.)?domain\. [NC] 
RewriteRule \.(avi|mp4)$ - [F,NC]

请务必将domain替换为您的实际域名。