解决新浪微博图床外链方法

最近网站很多图片不显示了,原先一直用的免费外链的新浪图床,但是新浪图床不让用了,我把所有存放在新浪的图片打包回来,一共20多G,动用其他图床基本上不可能了。

目前新浪图床链接前缀有:wx1/2/3/4、ww1/2/3/4 、 ws1/2/3/4与 tva1/2/3/4 为前缀的节点目前都被限制了。

这里网上总结了几个方法,可以解决外链限制问题,继续使用。

一、解决新浪图床外链不显示方法

1、将图床链接加入以下前缀:

cdn.cdnjson.com

举例:

新浪链接:https://tva1.sinaimg.cn/mw690/d83cce73gy1gy3su0v8emj20dt0sgabp.jpg

加入前缀:cdn.cdnjson.com/tva1.sinaimg.cn/mw690/d83cce73gy1gy3su0v8emj20dt0sgabp.jpg

即可正常显示:

20251104082424554-303e-icuacsa8692866

二:其他新浪图床外链前缀

没有等号的不加https://
https://cdn.cdnjson.com/tva1.sinaimg.cn/mw690/d83cce73gy1gy3su0v8emj20dt0sgabp.jpg

有等号的需要https://
https://cdn.cdnjson.com/pic.html?url=https://image.baidu.com/search/down?url=https://tva1.sinaimg.cn/mw690/d83cce73gy1gy3su0v8emj20dt0sgabp.jpg

三:修改UA解决办法

解决方案:
1、自定义UA:UA用你原来的,在UA字段里再加一个(Baidu; P1 8.0.0)字段就行。

2、使用php的curl模拟ua

四、META标签

在网站的<head>标签内添加一行声明referrer的规则

<meta name="referrer" content="same-origin">
<meta name="referrer" content="no-referrer" />

五、IMG标签

既然是图片资源,那么在HTML5中的img标签有一个referrerpolicy的属性,可以显示声明referrer规则,所以在图片标签中加入一个属性即可

<img src="https://image.baidu.com/search/down?url=https://wx4.sinaimg.cn/large/006WvzUFly4g2fbc9ojcbj30j60auq3j.jpg" referrerpolicy="no-referrer">

六、Nginx反向代理

反向代理就是一种,代理请求的方式,相当于是,自己的服务器去访问图片,然后将图片转发给用户如果您使用的是宝塔服务器面板,那么可以如下配置:20251104082844487-图片同时记得开启缓存,时间越大越好(避免频繁请求)

七、总结

以上方法可以初步简单的搞定新浪图片不能外链显示到其他网站的原理,其基本原理就是新浪并未禁止这些网站域名外链。

© 版权声明
THE END
点赞38 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容