早在 2019 年 5 月,新浪微博图床开启防盗链,很多使用新浪微博图床的站点都沦陷,绝大部分网站的图片无法显示,返回 403 错误等。配合 Chrome / Firefox 扩展插件,新浪微博图床使用确实很方便,并且速度不赖。
免责声明:所有内容均转载自网络或是使用经验,仅供参考,解压及网盘密码 1024
新浪微博相册图片限制外链 403 图床不显示 怎么解决?
彻底方法:弃用新浪微博相册图床,自建图床或使用七牛、阿里云、付费图床等。
「新浪微博相册图片限制外链 403 图床不显示 临时解决方法:https://0xo.net/1718」新浪微博相册图片限制外链 403 图床不显示 临时解决方法
修改 referrer:在 header 中新增:
<meta name="referrer" content="no-referrer" />
不推荐此方法,对整站有影响(站点统计、收录等)
目前暂时比较可行方法:给 img 标签添加 referrerpolicy="no-referrer" 属性:
「新浪微博相册图片限制外链 403 图床不显示 临时解决方法:https://0xo.net/1718」<img src="https://ws3.sinaimg.cn/thumb150/xxoo.jpg" referrerpolicy="no-referrer">
推荐此方法,只修改文章内容 img 标签,其它不受影响。
解决办法原理,以下面网址做说明:
<img src="http://wx3.sinaimg.cn/mw690/005Cikyoly1fy3yd869pfg30hs09yhe4.gif" />
这个图片在本站域名下用 img 标签不显示,修改一下就能正常显示:
「新浪微博相册图片限制外链 403 图床不显示 临时解决方法:https://0xo.net/1718」<img src="http://wx3.sinaimg.cn/large/005Cikyoly1fy3yd869pfg30hs09yhe4.gif" referrerpolicy="no-referrer" />
实例 img 标签下有两处改动,将 mw690 替换为 large,img 标签属性添加 referrerpolicy="no-referrer" 。实际操作只需将原图片地址中 mw690 替换为 large,然后添加属性 referrerpolicy="no-referrer" 即可。
示例结构代码,实际应用需要根据网站作相应修改:
<div id="postlist">
<table></table>
<table></table>
<div>
<table>
<tbody>
<tr>
<td> 第一个 td</td>
<td>
<div></div>
<div class="pct">
<img src="https://user-images.githubusercontent.com/23384966/57830772-c0f4de00-77e5-11e9-8179-3495a36c25c4.gif">
<img src="http://www.gifdtm.com/data/attachment/forum/201806/13/211440j2fgmqgtg7ffy75p.jpg"/>
<p> 选择这个元素下的所有 img 标签</p>
<img src="http://wx3.sinaimg.cn/large/005Cikyoly1fy3yd869pfg30hs09yhe4.gif" />
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div></div>
<table></table>
</div>
下面是修改代码的步骤,参考:
「新浪微博相册图片限制外链 403 图床不显示 临时解决方法:https://0xo.net/1718」<script src="jquery.js"></script>
<script>
//postlist 下面第一个 div 的 table 下面的 img 标签添加 referrerpolicy="no-referrer"属性
var imgs = $("#postlist .pct img");//选择 img 标签
imgs.attr("referrerpolicy","no-referrer");
imgs.attr("alt","alt 文字");
//console.log(typeof imgs.attr("src"));//返回的是一个 img 的 src
//console.log(typeof imgs);//返回 imgs 类型,object 类型
//声明空数组,等待接受元素
var arr = new Array();
//遍历 imgs 对象,以便取到 imgs 中的所有 img 标签
$.each(imgs,function(i,value){
//console.log(src + " " + value.src); //测试输出索引和值
str = value.src.replace(/\/mw690\//ig, "/large/"); //正则表达式替换字符串
//console.log(str); //测试输出字符串
arr.push(str); //将替换后字符串添加到 arr 数组
//console.log(arr);
$(this).attr("src",arr[i]); //将对应的当前第 i 个 img 标签的 src 属性设置为替换后字符串
});
</script>
任何服务、机场均有跑路风险,大小机场也没有绝对好坏,请注意甄别防范!!备用节点参考:大哥云官网、万城专线官网、飞机云官网、搬瓦工JMS、极客云官网……解压及网盘密码 1024
Comments:0