新浪图床失效

        今年三月份的时候就听说新浪图床要设置防盗链。东西存在别人家终究不是长久之际,免费的产品就更不用说了,我知道这一天终究会来的,只是来得比大家预期的都要早,以为还可以安心的用几年呢,好在之前的一次服务器迁移中,我所有的数据都转到本地了。

o0600036014402395042.png

        新浪图床是一个非常好的图床,虽然新浪到处被喷,但是在图片外链上一直没采取防盗链措施。众所周知,图片的加载是需要流量的,但如果服务器带宽不够大,那么网站的加载速度明显降低,用户的体验就不好,所以不少的小网站站长,会将图片以外链的方式存到新浪图床中。

        新浪的防盗链Referer 防盗链,这种类型的防盗链方式,非常常见也很简单
        Referer在HTTP协议里有特殊的用途,当浏览器向服务器发送请求时,一般会带上Referer头,告知服务器该请求是从哪个页面链接过来的。Referer经常被用于页面访问统计、图片防盗链等。
        当一个HTTP请求发送到CDN服务器后,CDN服务器检查客户URL中所携带的Referer字段的信息,禁止或者允许符合特定规则(支持正则匹配)
        常见CDN服务就会提供此类型的防盗链功能,典型特征是:不能通过其他网站访问,但是直接访问图片资源的URL是可以下载、查看。
        一、先说下临时解决方案,那就是在网站配置文件里面加一行配置:

add_header Referrer-Policy “no-referrer”;
        这条配置的意思是将整个 Referer 首部移除。访问来源信息不随着请求一起发送。总之就是让新浪那边认为,这张图片我是直接输入完整的图片地址打开的,而不是从他人的网站引用打开的。
server {
listen 443 http2 fastopen=3 reuseport;
server_name blog.silingjiefei.store;
root /www/blog;
add_header Referrer-Policy "no-referrer";
        另一种方法就是在主题文件 header.php 文件中添加相关代码,不过这终究不是长久之计,refarrer 相关的功能都失效了,有点饮鸩止渴的意思,我们还是得另辟蹊径。

        二、html 的话,在 head 标签中加入

<meta name=”referrer” content=”same-origin” />
<meta name=”referrer” content=”no-referrer” />
        这样就可以继续使用新浪图床,但是可能会有一些网站基于referrer规则的功能会异常 

       三、img 标签加

referrerpolicy=“no-referrer”
# 浏览器非兼容,自测
        既然是图片资源,那么在HTML5中的img标签有一个referrerpolicy的属性,可以显示声明referrer规则,所以在图片标签中加入一个属性即可

        四、Nginx反向代理

        反向代理就是一种,代理请求的方式,相当于是,自己的服务器去访问图片,然后将图片转发给用户,如果您使用的是宝塔服务器面板,那么可以如下配置:

 6661013-937f5b780bcbde82.jpg

        同时记得开启缓存,时间越大越好(避免频繁请求)



版权声明:除非注明,文章均为【卢杰个人博客】原创,欢迎转载!转载请注明本文地址,谢谢!

作者:卢杰个人博客

本人学识渊博,经验丰富,代码风骚,效率恐怖,C/C++、Java、php无不精通;熟练掌握各种框架,会DDOS一秒钟死一个站,会注入,会上传,会Xss,会破解,会嗅探,会开发,会业务,会运维,会渗透,调戏客服MM,无不精通,全面漏洞认识深刻,熟练掌握各种渗透理论,各种操作系统内核,一天只睡4小时,脾气好,不喷人,操作虎,意识强,渗透快,shell多,能过狗,能过盾,听指挥。千里之外取服务器首级,瞬息之间爆管理员,压安全狗如压草芥,电话通知出bug后,千里之外定位问题,瞬息之间修复上线。身体强壮,健步如飞可

返回列表
上一篇:
下一篇:

发表评论

快捷回复: