今天做个项目学到了一点,防盗链机制如果允许无 Referer 访问的话,是很容易绕过的。
先说说防盗链的原理,http 协议中,如果从一个网页跳到另一个网页,http 头字段里面会带个 Referer。图片服务器通过检测 Referer 是否来自规定域名,来进行防盗链。
如果盗用网站是 https 的 protocol,而图片链接是 http 的话,则从 https 向 http 发起的请求会因为安全性的规定,而不带 referer,从而实现防盗链的绕过。
比如现在在 cnode 这里,由于我们启用了 https,所以任何 http 的图片几乎都可以直接贴过来并显示了。
27 回复
@alsotang 浏览器卡的紧 但程序代理你怕不怕 所有引用的外部图片 xxx.com/xxx.png 全部给你弄成 cnodejs.org/daolian?imgurl=xxx.com/xxx.png 程序里面用curl获取 再输出 外面在弄个varnish给你一缓存