【发布时间】:2014-04-04 23:07:38
【问题描述】:
我有一个要求,我需要拒绝访问文件夹 (localhost\uploads\video)。我通过在本地主机的 htacess 中应用以下规则得到了这个:
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost/ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost.*$ [NC]
RewriteRule \.(|avi|mp4)$ - [F,NC]
场景 1 - 如果我尝试通过在浏览器中直接输入地址来访问资源(主要是 .avi 文件),它工作正常,这是消息: 禁止您无权访问此服务器上的 /video/23/videoname.html。此外,在尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误。没问题。
场景 2 - 应用了 tis 规则后,如果我尝试点击主页中的任何链接,从而将我带到视频,我也会收到与场景 1 相同的消息,这不是我想要的。我想当我通过主页访问时(通过点击 avi 链接),这条消息不会出现。
我怎样才能以这种方式完成这项工作?我想阻止直接访问,但如果从主页执行,我想保持它正常工作...
问候 埃利尔
【问题讨论】: