桌面主图正常,手机上的规格图却不见了;旧图片链接打开又显示找不到文件。换 CDN 后,先查旧地址到了哪张新图,再查手机实际加载的是哪份尺寸文件,最后检查给 Google 的图片入口。
CDN 会通过不同地区的服务器替网站提供图片。它可能保留原图片网址,也可能让图片换到新域名或路径。网址没变,不用凭空加迁移跳转;确实变了,就给每张重要旧图找到对应新图,更新页面和图片地图。桌面有图只证明这次用到的一份文件正常。
以下用 P-420 产品的正面图和规格图说明,地址与检查结果都是教学设定。封面左侧是四个旧文件各自对应的新图,右侧是正面图、规格图各有自己的800与480尺寸;两种画面不能混成一组。图片压缩和速度可另看WordPress 图片优化,本文先解决换地址后哪里缺图。
先比较图片地址,不要拿产品页地址代替
打开正式产品页,右击图片复制图片地址,和迁移前记录比较。产品页仍可能是 https://example.com/pumps/p-420/,图片却从主站的上传目录换到 https://img.example.com/products/p420/front-800.webp。你要比较的是文件网址,不是浏览器顶部的产品页网址。
如果图片公开地址完全没变,只换了背后的服务器,先用未登录窗口检查文件能否打开、画质和缓存是否正常。维护者再检查 CDN 是否正确提供图片;相关配置可看WordPress CDN 接入。这种情况没有一个“旧网址”需要跳去不同的新网址。
如果域名或路径变了,从旧页面、媒体库和实际图片地图找重要旧地址。维护者还可以补查旧页面代码与访问日志,带上自动生成的不同尺寸。Google URL 迁移指南要求把图片等文件也纳入迁移。
产品网页没有搬家,就不因换图把网页 canonical 改成 CDN 图片地址。canonical 是给网页建议主要网址的标签;一张图片不是原产品网页。
把旧图和新图一一对应,再打开看内容
我们的旧文件前缀是 https://example.com/wp-content/uploads/2025/07/,新文件前缀是 https://img.example.com/products/p420/。下面文件名接到对应前缀后,就是完整地址。
| 旧图片文件 | 对应新图片文件 |
|---|---|
| p420-front.jpg,正面800版本 | front-800.webp |
| p420-front-480.jpg,正面480版本 | front-480.webp |
| p420-spec.jpg,规格800版本 | spec-800.webp |
| p420-spec-480.jpg,规格480版本 | spec-480.webp |
对应的标准是同一产品、同一视角和用途,不是文件名差不多。JPEG 改成 WebP 可以仍是同一张图;规格图却不能转成另一型号的产品照。放大入口使用的大图也要保留所需细节。
普通编辑先在未登录窗口分别打开旧图、新图,看最终地址与画面。旧图可以继续提供同图,也可以永久跳到对应新图。重要图片都不能随手转到首页或产品网页;不再使用的旧图另外决定下线。
本例旧正面图返回404,新正面图能打开;规格800正常,规格480却返回403。404是找不到,403是服务器拒绝访问,200是请求正常返回。把具体坏地址交给主机或 CDN 管理员,比只说“手机图不见了”更容易处理。
维护者需在浏览器开发者工具 Network(网络) 检查取得文件的 GET 请求,记录旧地址状态、Location 跳转目标与最终响应。永久搬迁可配置301或308,尽量旧图直接到对应新图。最终200仍要检查响应内容和 Content-Type:登录页、错误HTML或占位图也可能返回200,文件扩展名不是图片正常的证明。
配置跳转前,管理员还要看 CDN 没缓存这张图时去哪里取原件,这叫“回源”。如果它去旧公网地址拿图,而旧地址又跳回 CDN,就可能循环。先安排不经过循环的原件路径,再分别测试已有缓存和重新回源。第二次有图可能只命中了 CDN 缓存。
旧服务器不归你管理、暂时无法加跳转时,先更新自己能控制的页面和地图,并明确记“旧入口尚未处理”。新图正常不等于旧链接也完成了迁移。

手机断图,找它这次实际用了哪份文件
同一张图可能有800和480等不同宽度。网页给浏览器一个默认地址 src,还用 srcset 列出可选尺寸;浏览器按图片显示宽度和屏幕像素密度选择下载。因此主图替换好了,旧的小尺寸、图库放大地址或另一套手机组件仍可能没改。
普通编辑先用手机打开同一产品页,确认缺的是正面图还是规格图。尝试打开或复制那张图片地址,保存页面、设备和错误画面;复制地址是定位线索,实际下载哪份文件要请维护者继续查。
维护者先对照“查看源代码”中的初始图片标签和 Elements(元素) 中加载后的标签,找脚本有没有改地址。正面图可这样提供尺寸版本,sizes 说明它预计显示多宽,应按真实容器填写:
<img src="https://img.example.com/products/p420/front-800.webp"
srcset="https://img.example.com/products/p420/front-480.webp 480w,
https://img.example.com/products/p420/front-800.webp 800w"
sizes="(max-width: 600px) 100vw, 800px"
alt="P-420 工业泵正面外观">
规格图应有自己的标签和800/480文件,不能混进正面图的 srcset。使用 <picture> 时,各条 source 地址也要检查,并保留 img src 默认图。Google 图片指南说明 Google 可从 img src 发现图片,不索引 CSS 背景图。商品标记、分享预览、放大链接若引用本批文件,也按同一对应表更新。
实际加载检查保留这几个动作:
- 在 Elements 选中出错的
img,到 Console(控制台) 输入$0.currentSrc。$0要对应这张图片,返回值是浏览器本次选中的图片网址。 - 在 Network 筛图片请求,勾 Disable cache 后重载,查看实际状态、响应类型和画面。它只关闭浏览器缓存,不清 CDN 缓存。
- 记录视口宽度、图片显示宽度、DPR和实际地址。DPR是屏幕像素密度,可用
window.devicePixelRatio查看。再逐一打开其他候选,不能因为这次没选到就漏掉坏文件。
currentSrc 只说明选了哪份,不说明下载成功。390px手机也不必然选择480图,DPR等条件会改变选择。
在教学 P-420 上,1440px、DPR1选规格800,响应200;390px、DPR1选规格480,响应403。现在找到的是 spec-480.webp 这份文件。管理员修正它的访问规则后,按同390px、DPR1重载,确认实际请求200且规格文字能看清;再测DPR2和其他候选。无需因此重压缩全库或重新上传所有主图。

页面能看以后,再检查 Google 的访问和图片地图
请 CDN 管理员检查图片路径的 robots.txt、登录要求、会过期的签名、防盗链与 WAF。WAF是网站防护规则,可能拒绝某些请求。文件在管理员浏览器能打开,仍不能证明爬虫以相同方式能拿到。
按具体失败请求和日志找规则。把 User-Agent 改成 Googlebot 后得到200,只是模拟请求,不能证明真正 Googlebot 已抓成功。Google 请求要验证身份,并分清日志来自 CDN 边缘还是原服务器。
图片地图,即图片 sitemap,是告诉 Google 网页用了哪些图的清单。普通 loc 放产品网页地址,image:loc 放图片,可使用 CDN 跨域地址。官方图片地图说明允许单独地图或加入现有地图。以下为两张代表图的教学 XML:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://example.com/pumps/p-420/</loc>
<image:image>
<image:loc>https://img.example.com/products/p420/front-800.webp</image:loc>
</image:image>
<image:image>
<image:loc>https://img.example.com/products/p420/spec-800.webp</image:loc>
</image:image>
</url>
</urlset>
打开站点实际生成的XML,找P-420的 image:loc,确认不再留旧地址,再打开这些新图。地图不必列同一画面每个尺寸,但页面的全部候选仍要检查。生成、提交或解析有问题,可接着看XML Sitemap 排错。
跨域地图还要按官方要求检查主站与CDN域在 Search Console(GSC,Google站长工具)的验证。根域的 Domain(网域) 资源覆盖子域;URL前缀 资源只覆盖指定协议、主机和路径,不能把主站前缀验证当成图片子域也已验证。资源范围说明可供负责人对照。
第三方CDN域不由你控制时,问服务商能否验证或使用自有图片域名。验证和地图提交帮助发现与报告问题,不保证新图被收录;文件还打不开时,先修文件。
保留回退办法,搜索变化随后观察
当前应能明确说出:四条旧入口到同图,新文件正常;页面默认图、各尺寸与放大链接已更新;手机原失败条件已复测;地图和域验证已检查。回源型CDN还要补未命中缓存的结果。规格480仍403、旧图404或循环,就先修这几份,不扩大替换。
需要回退时,管理员先确认旧服务器和原文件可用,再恢复受影响的页面引用并撤掉冲突跳转。旧网址已经永久跳坏的新图,只改回旧地址仍会跳走。保留原文件、旧新对应和当前配置,才能确认回退真正有效。
Google后续由SEO负责人记录上线时间与迁移范围。某份日志在某时段没有请求,不等于Google完全没抓;先检查日志覆盖哪一层和身份。图片搜索变化可按GSC 图片搜索落地页检查比较相同页面、国家、设备和时段;Pages表按HTML落地页统计,不是每张图片文件的点击清单,也不证明所有新图已替换旧图。
最后把“文件和页面已经正常”与“Google重新抓取仍待观察”分别写清。重新发现没有统一天数,永久跳转不保证原排名。若是整站改版的一部分,可查看WordPress 建站与重构范围,带旧新图片各一例和改版目标到项目咨询说明。
常见问题
图片地址没变,只接入 CDN,也要给旧图做301吗?
不用为同一公开网址新增迁移跳转。检查访问、画质、缓存和回源;只有文件域名或路径真变了,才整理旧新对应和旧入口。
图片在 CDN 上,可以放进主站的图片 sitemap 吗?
可以,网页放普通loc,图片放image:loc。按官方要求检查两域验证、图片访问与robots;列进地图不是收录保证。
新图能打开后,可以直接删除旧文件吗?
先查旧入口和CDN是否还依赖它回源,以及其他页面或放大链接有没有用旧件。新图独立可用、旧入口也处理好后,再决定清理,不只凭主图看着正常。