【问题标题】:Force image download with htaccess使用 htaccess 强制下载图片
【发布时间】:2014-12-27 09:57:22
【问题描述】:

使用以下代码,我可以用另一个图像替换热链接图像。但是,是否可以强制下载替换的图像而不是在浏览器中打开?

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(subdomain\.)?mydomain.com.*$ [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/D5ZIJBq.jpg [NC,R,L]

【问题讨论】:

标签: apache mod-rewrite hotlinking


【解决方案1】:

您无法通过此重写强制下载。

您的服务器必须提供此文件(例如在http://subdomain.mydomain.com//img/my_fake_image.jpg 中)。 然后,修改你重写规则并添加以下规则(未测试并适应)

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(subdomain\.)?mydomain.com.*$ [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://subdomain.mydomain.com/img/my_fake_image.jpg [NC,R,L]
<FilesMatch "\.my_fake_image.jpg$">
    ForceType application/octet-stream
    Header set Content-Disposition attachment
</FilesMatch>

【讨论】:

  • 谢谢你的回答,但你能解释一下吗,你的意思是不适应?会伤害吗?我应该将您的代码放在重写规则之下,它只会强制下载 imgur.com 图像吗?谢谢。
  • 不行,还是在浏览器中显示,apache开启了headers模式,所以没有问题。
猜你喜欢
  • 2012-02-23
  • 2011-05-12
  • 2016-01-16
  • 2013-01-01
  • 2014-11-19
  • 1970-01-01
  • 2011-08-12
  • 2011-10-11
相关资源
最近更新 更多