我们获得公众号文章里的图片素材URL后,由于微信使用了防盗链,所以显示不出照片,提示【此图片来自微信公众号平台,未经允许不可引用】,如何解决这个问题呢?

解决办法1

图片转由你的服务器代理输出, 图片地址改为your-domain.com/image-proxy?url=微信的图片地址,
在你的服务端获取这个url地址,file_get_contents再输出,若仍显示防盗链就用curl 模拟header refer来获取数据输出

解决办法2


在html模板的head里添加referer

<meta name="referrer" content="never">

解决办法3

使用七牛云这样的存储CDN功能,我建了一个,使用方法如下:

例如

https://mmbiz.qlogo.cn/mmbiz/Pib4RR89AhxbfibSHHQHf3tfgh1ibSt8M9vWbeBh6bBYTMsDOgzoAFibamLNRXWLV2LdMBqrUsF6hO38WNjQ9yXAUg/0?wx_fmt=jpeg

将mmbiz.qlogo.cn改为七牛提供的https域名:mp.zy62.com

即:

http://mp.zy62.com/mmbiz/Pib4RR89AhxbfibSHHQHf3tfgh1ibSt8M9vWbeBh6bBYTMsDOgzoAFibamLNRXWLV2LdMBqrUsF6hO38WNjQ9yXAUg/0?wx_fmt=jpeg

在网页代码里进行替换即可

推荐使用第2种办法,最直接最简单的办法

最后修改:2020 年 06 月 17 日
卧槽,全是白嫖客,服务器不要钱吗?