已配置og:image,WhatsApp分享链接仍无缩略图问题求助
我来帮你梳理下常见的原因,毕竟做开发这么久,不少同行都踩过这些坑:
图片规格不达标:WhatsApp对缩略图有明确的尺寸偏好,建议用1200x630像素(1.91:1的宽高比),如果图片过小(比如低于300x200)或者比例偏差太大,大概率会被忽略。另外要保证图片没有拉伸变形,不然也可能不展示。
缓存拖了后腿:这是最容易被忽略的点!WhatsApp会缓存链接的预览数据,哪怕你已经更新了
og:image,它可能还在调用旧缓存。你可以试试这几个办法:换个从没分享过该链接的账号测试,或者在链接末尾加个随机参数(比如?v=202405)让WhatsApp认为是新链接,重新抓取;也可以用WhatsApp官方的链接预览调试工具刷新缓存。图片路径或访问权限问题:首先确认
og:image的URL是绝对路径(比如https://your-site.com/your-image.jpg),相对路径(/your-image.jpg)可能会被爬虫解析错误。然后直接在浏览器打开这个图片URL,看看能不能正常加载——如果返回404、需要登录或者有防盗链拦截,WhatsApp爬虫肯定拿不到图片。服务器限制了爬虫访问:检查你的
robots.txt文件,有没有禁止WhatsApp的爬虫(比如User-agent: WhatsApp被设置了Disallow: /);另外有些网站的防盗链规则会屏蔽非浏览器的请求,暂时关闭防盗链测试下,看缩略图是否能正常显示。图片格式或体积超标:优先用JPG或PNG格式,WebP虽然现在有些场景支持,但兼容性不稳定。同时图片体积尽量控制在1MB以内,太大的话爬虫可能会直接跳过。
OG标签不完整:光有
og:image还不够,最好配套加上og:image:width和og:image:height标签,明确告诉WhatsApp图片的尺寸,示例代码如下:<meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630">另外
og:url要和你分享的链接完全一致(包括大小写、参数),og:type也建议设置为article(如果是文章页面),这些细节都会影响预览效果。页面加载超时:如果你的服务器响应太慢,WhatsApp爬虫在超时前没抓取到图片内容,也会导致预览失效。可以用性能测试工具检查页面加载速度,优化服务器响应或者图片加载速度。
爬虫UA被拦截:有些网站会针对特定用户代理(UA)返回不同内容,要确保当WhatsApp爬虫(UA一般包含
WhatsApp字样)访问时,能正常返回带有完整OG标签的页面,不会被重定向或者返回空白内容。
内容的提问来源于stack exchange,提问作者user2472368

