You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress网站Facebook分享OG图片不显示的服务器端排查咨询

解决WordPress文章分享至Facebook时缩略图不显示的服务器端排查方案

一、需检查的服务器端核心设置

  • 盗链保护:检查服务器(比如cPanel的Hotlink Protection工具)是否限制了非授权域名访问/wp-content/uploads/下的图片,必须把facebook.com、fbcdn.net这类Facebook相关域名加入白名单。
  • 缓存机制:
    • 检查LiteSpeed缓存或服务器级缓存是否给Facebook爬虫(facebookexternalhit/Facebot)返回了过期资源,或者缓存规则直接拦截了爬虫的图片请求。可以临时关闭缓存测试,或者给Facebot设置缓存豁免规则。
    • 同时检查WordPress插件缓存(比如LiteSpeed Cache、WP Rocket)的规则,确认没有针对Facebot的拦截配置。
  • 防火墙与权限:
    • 检查服务器防火墙(包括Cloudflare这类CDN防火墙)是否把Facebot的IP段或UA标识加入了拦截列表,必须放行这个UA:facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)。
    • 确认/wp-content/uploads/目录权限为755,图片文件权限为644,避免Facebot因权限不足读取失败。

二、LiteSpeed、Hostinger、ModSecurity的已知拦截情况

  • LiteSpeed:部分默认的LiteSpeed缓存或安全规则会限制未知UA的请求,要在控制台的「Security」或「Cache」模块里,把Facebot的UA加入允许列表;另外如果开了LiteSpeed的「Hotlink Protection」,一定要添加Facebook域名到白名单。
  • Hostinger:Hostinger的hPanel安全工具里有默认的防盗链和爬虫拦截规则,去「Security」>「Hotlink Protection」检查白名单;同时Hostinger自带的ModSecurity可能误判Facebot请求,可临时关闭ModSecurity测试,或者在规则里放行Facebot的UA。
  • ModSecurity:部分OWASP核心规则会把Facebot批量抓取图片的行为当成恶意爬取,导致拦截。去查看ModSecurity的日志,找到对应的拦截规则,然后把Facebot的UA或IP段加入规则豁免。

三、具体排查步骤

  1. 模拟爬虫访问图片:用Chrome开发者工具修改请求头的User-Agent为facebookexternalhit/1.1,直接访问目标图片URL,看能不能正常加载。如果加载失败,说明服务器确实在拦截请求。
  2. 查看服务器日志:检查Apache或LiteSpeed的access.log、error.log,搜索facebookexternalhit关键词,看有没有403、404这类错误状态码,定位具体拦截原因。
  3. 设置缓存豁免:在缓存插件或服务器缓存配置里加规则:当请求的User-Agent包含facebookexternalhit时,跳过缓存,直接返回原始资源。
  4. 强制重新抓取:在Facebook Sharing Debugger里点击「Scrape Again」,让爬虫重新抓取页面和图片,测试缩略图是否正常显示。

内容的提问来源于stack exchange,提问作者Herald L

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 12:43:12