网页分享预览图异常主因是og:image设置不规范:必须用https绝对url、允许跨域、尺寸≥1200×630、格式为jpg/png/gif、文件≤5mb;微信还需添加wx:webpage和wx:thumbnail标签,并通过平台调试工具强制刷新缓存。

网页分享时预览图不显示、显示错误或被缓存旧图,基本都是 og:image 设置不规范或未被正确抓取导致的,不是“没加标签”这么简单。
og:image 必须是绝对 URL 且可公开访问
相对路径、本地路径、带登录态的图片地址(如需 Cookie 才能访问)都会让 Facebook、微信、Twitter 等平台爬虫直接失败,返回空图或默认站标。
-
og:image的值必须以https://或http://开头,不能是/images/thumb.jpg或./assets/cover.png - 图片需允许跨域加载:服务器响应头中应包含
Access-Control-Allow-Origin: *(尤其对微信内嵌浏览器关键) - 避免使用 CDN 带动态参数的 URL(如
?v=123),部分平台会去重或缓存失效;稳定用带版本号的文件名更可靠,例如share-v2.jpg
图片尺寸和格式有硬性要求
不同平台对 og:image 的解析逻辑不同,但共性很明确:太小、拉伸变形、非矩形或格式冷门,大概率被降级或忽略。
- 推荐尺寸:至少
1200×630像素(Facebook 官方建议),宽高比 1.91:1;微信对最小尺寸要求是300×300,但低于600×600易被压缩模糊 - 只支持
.jpg、.png、.gif(静态帧),不支持 WebP(微信、钉钉目前不识别)、AVIF、SVG - 文件大小建议 ≤ 5MB;超过 8MB 多数平台直接放弃加载
微信分享必须额外加 wx:webpage 兼容标签
微信内置浏览器(尤其是 iOS)对 Open Graph 解析较弱,仅靠 og:image 不稳定,常 fallback 到页面第一张 <img>。要确保强控制,必须补充微信私有协议。
- 在
中紧接og:image后添加:<meta name="wx:webpage" content="true"><meta property="wx:thumbnail" content="https://example.com/share.jpg">
-
wx:thumbnail值必须与og:image一致,且同样要求 HTTPS + 可公开访问 - 微信调试可使用「微信开发者工具」的「网页调试」面板,或在真机上用「微信 > 发送给朋友 > 预览」实时观察(注意清除微信缓存,长按链接 → “重新加载”)
平台缓存顽固,刷新要用专用工具验证
Facebook、LinkedIn、微信等都会长期缓存 og:image 和其他 OG 标签,改完 HTML 并不等于分享时立刻生效。
- Facebook:用 Sharing Debugger 输入网址 → “Scrape Again”,强制重抓
- LinkedIn:用 Post Inspector,同样支持即时重抓
- 微信:无官方刷新接口,需满足两个条件才可能更新——① 图片 URL 改变(如加时间戳或哈希后缀),② 在微信内打开该页一次(触发 JS 注入或资源预加载)
- 切忌用 Incognito 模式测试:微信、QQ 分享依赖客户端本地缓存,隐身窗口看不到真实效果
最易被忽略的是图片跨域头和微信私有标签的组合缺失——单独加 og:image 在微信里大概率失效,而加了又不处理缓存,就会误以为“设置没用”。先跑通 Facebook Debugger,再验微信真机,顺序不能反。











