【问题标题】:img http refererimg http 引荐来源网址
【发布时间】:2011-03-09 09:58:28
【问题描述】:

当使用任何主流浏览器打开图像(通过<img> 标签)时,会发送 HTTP 引用标头。我正在尝试将 src 属性设置为一些 https:// url(有效证书,希望从安全页面转到不安全页面将使引用者空白),然后重定向到目标页面(通过 Location 标头)和其他一些“方法” ,似乎没有任何效果...请问有什么想法吗?

【问题讨论】:

  • 我不明白你的问题是什么。你能澄清一下吗?
  • 这背后的深层原因是什么。你需要这个做什么?
  • @pekka 我想清空推荐人
  • 但是为什么呢?这似乎没有任何正当理由(至少我不能想到)
  • 我能想到这样做的唯一原因是为了绕过基于引用的反盗链系统。我希望 OP 有更好的动机,但我想不出一个。

标签: php http


【解决方案1】:

如果我理解,这可以解决问题:

$opts = array('http' =>
    array(
        'method'  => 'GET',
        'header'  => 'Referer: http://example.com',
    )
);

$context  = stream_context_create($opts);

header('Content-Type: image/vnd.microsoft.icon');
echo file_get_contents($_GET['image_src'], false, $context);

然后在 HTML 中:

<img src="/path/to/file.php?image_src=http://www.google.com/favicon.ico" alt="">

希望对你有帮助。

【讨论】:

  • ……但在将其指向第三方图像之前,请确保您获得版权律师的法律建议。
  • ...不要说icoimage/png——它可能不是。
【解决方案2】:

或者只是将图像保存到您自己的网站。来自不同站点的盗链图片通常被网络礼仪视为带宽窃取

【讨论】:

  • 仅将图像保存到您的网站通常会被视为侵犯版权。有时盗链也是如此。
  • 没有必要。如果您进行了尽职调查,但无法找到或联系版权所有者,那么您可以使用它(您不会受到法定费用的约束)。当然,如果您从中赚钱,他们就有资格获得其财产的市场价值。 AFAIK
  • 版权法因地而异。如果您甚至考虑走这条路,您真的需要聘请律师。
猜你喜欢
  • 2011-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-14
相关资源
最近更新 更多