我甚至不确定这是否可行;我在 Apache 服务器上。对于位于以下位置的文件:
http://www.example.com/dir/img.jpg
- 允许将该图像加载到从该目录调用的页面中。
- 禁止直接加载此图像;即不应加载上述 URL
- 防止从其他页面链接此图像
目的是让文件只能显示在它所指向的特定页面上;它不能直接被查看。可以这样做吗?
答案1
来自Apache 文档:
阻止内联图片
描述:假设我们有 http://www.quux-corp.de/~quux/一些页面带有内嵌的 GIF 图形。这些图形很漂亮,所以其他人直接通过超链接将它们合并到他们的页面中。我们不喜欢这种做法,因为它会给我们的服务器增加无用的流量。
解决方案:虽然我们无法 100% 保护图像不被包含,但我们至少可以限制浏览器发送 HTTP Referer 标头的情况。
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule .*\.gif$ - [F]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !.*/foo-with-gif\.html$
RewriteRule ^inlined-in-foo\.gif$ - [F]