A AumCreate 建站、定制开发与成品插件/主题记录

seo-notes · 2026/8/26 · 更新于 2026/8/26

WordPress 迁移新域名后旧 URL 全部 404 怎么办?301 重定向与权重迁移完整指南

许多站长在迁移 WordPress 到新域名时,只更新了站点地址,却忽略了旧域名的 301 重定向,导致搜索引擎收录的旧 URL 全部 404。本文从问题诊断出发,给出服务器层、WordPress 层和 CDN 层的三层重定向方案,并详解 Search Console 地址变更工具的使用、权重转移的三个关键细节,最后用 AumCreate 外贸站迁移案例说明修复效果。全文面向技术站长和企业负责人,提供可立即执行的步骤。

WordPress 迁移新域名后旧 URL 全部 404 的修复流程图,显示服务器层 301 重定向到新域名
图片来源:Pexels / Markus Winkler

摘要

更换域名后旧页面返回 404,不仅用户流失,搜索引擎也会快速清退索引。本文用技术笔记的方式,分享从诊断、301 批量重定向、Search Console 地址变更到权重平稳过渡的完整步骤,并附 AumCreate 项目中的实际经验。

直接回答

更换域名后,如果搜索引擎收录的旧 URL 全部返回 404,原因几乎都是没有配置从旧域名到新域名的 301 永久重定向。搜索引擎会把 404 视为页面永久删除,从而快速清退索引。你需要立刻做三件事:批量设置 301 重定向、通知 Search Console 地址变更、保留旧域名在线至少 180 天。

问题诊断:为什么旧 URL 全部 404

只改了数据库,没做服务器转发

很多站长在迁移时,只在 WordPress 后台把站点地址改成新域名,然后就把旧服务器关停或删除。旧域名一旦停止解析,或解析到一台没有旧站点的服务器,所有请求自然返回 404。

固定链接结构未同步

如果新站点没有沿用旧的固定链接设置(例如从“/%postname%/”改成“/%post_id%/”),即使做了域名级重定向,具体文章路径也可能对不上,导致部分 404。

旧服务器仍在运行旧 WordPress

如果旧域名解析到旧服务器,而旧 WordPress 的数据库已经指向新域名,访问旧域名时可能发生重定向循环或直接 404。正确做法是让旧服务器只返回 301,不再执行 WordPress 程序。

可执行方案:三层 301 重定向

服务器层:Nginx / Apache 规则

最稳定、性能最好的方式是在旧域名的服务器配置中加全站 301。

Nginx 示例:

server {
    listen 80;
    server_name olddomain.com www.olddomain.com;
    return 301 https://newdomain.com$request_uri;
}

Apache .htaccess 示例:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC]
RewriteRule ^(.*)$ https://newdomain.com/$1 [L,R=301]

注意 $request_uri 会保留路径和查询参数,实现一一对应。如果新旧域名路径结构有变化,需要额外写映射规则。

WordPress 层:插件或代码

如果无法修改服务器配置,可以使用 WordPress 插件。推荐 Redirection 或 Simple 301 Redirects。在插件中设置“源 URL”为 olddomain.com/*,“目标 URL”为 https://newdomain.com/*,并勾选“Regex”。这种方式依赖旧 WordPress 能正常运行,且性能不如服务器层,但胜在简单。

也可以在主题 functions.php 中加入代码:

add_action( 'template_redirect', function() {
    if ( $_SERVER['HTTP_HOST'] === 'olddomain.com' ) {
        wp_redirect( 'https://newdomain.com' . $_SERVER['REQUEST_URI'], 301 );
        exit;
    }
});

CDN / 代理层:不要忽略

如果旧域名前面有 Cloudflare 等 CDN,需要在 CDN 的“页面规则”中添加 301 重定向,或者把旧域名 CNAME 到新域名并开启代理。否则请求到达源站前就被 CDN 缓存了 404。

向搜索引擎提交信号

Search Console 地址变更工具

登录 Google Search Console,验证新旧两个域名资源。在旧域名资源中选择“设置” → “地址变更”,选择新域名并提交。这一步会告诉 Google“站点已迁移”,加速信号传递。

国内百度站长平台也有“网站改版”工具,可以提交新旧域名对应关系。虽然百度对 301 识别较慢,但主动提交能减少流量损失。

更新站点地图与新 URL 索引

为新域名生成新的 XML 站点地图,提交到 Search Console。同时用“网址检查”工具抽查几个重要旧 URL,确认它们能 301 到新 URL 并被 Google 识别。

权重转移的三个关键细节

内容一一对应

301 重定向必须保留路径结构。如果旧域名是 old.com/product/abc,新域名应该是 new.com/product/abc,不要重定向到首页或聚合页,否则无法继承页面级权重。

旧域名保持在线时长

Google 官方建议旧域名保持 301 至少 180 天。这期间旧域名的权重会逐渐传递,新域名索引稳定。提前停止旧域名会让传递中断。

外链主动更新

排查站外链接,能手动更新的(如目录、社交媒体、客座文章)尽量替换为新域名。虽然 301 可以传递权重,但直接链向新域名更高效。

AumCreate 项目中的处理经验

在 AumCreate 参与的某外贸独立站迁移中,客户旧域名有 400 多条收录 URL,迁移初期全部 404。我们先用服务器层 301 规则把旧域名整体跳转到新域名,同时用 Redirection 插件处理了 30 多个自定义路径映射。提交 Search Console 地址变更后,一周内新域名收录恢复 80%,两个月后自然流量回到迁移前水平。

这个案例说明:只要 301 配置正确、信号提交及时,旧 URL 404 是可以快速修复的,不必过度焦虑。

FAQ

问:换域名后 404 多久会影响排名? 答:搜索引擎爬虫遇到 404 会多次回访确认,如果持续几周都是 404,就会被判定为永久删除并移出索引,排名开始明显下滑。建议在迁移后 48 小时内完成 301。

问:301 重定向会不会丢失权重? 答:Google 表示 301 会传递大部分权重,但有小幅损耗(类似 1-10%)。相比 404 直接清零,301 是唯一正确选择。

问:旧域名必须续费吗? 答:至少续费一年,并保持 301 至少 180 天。即使 180 天后,如果还有用户收藏旧链接,继续保留重定向也没有坏处。

问:百度对 301 识别慢怎么办? 答:百度站长平台提交网站改版,并坚持保持 301 稳定。百度对批量改版需要人工审核,通常 1-2 周生效。

总结与内链建议

迁移新域名后旧 URL 404 是常见但可修复的问题。核心是“全站 301 + 地址变更 + 耐心等待”。如果你正在使用 WordPress,可以尝试本文提到的服务器规则或插件。如果涉及复杂路径映射或定制开发,也可以参考 AumCreate 的 WordPress 定制服务案例。

延伸阅读建议:

  • 如何选择适合外贸独立站的 WordPress 主题(链接到 /themes/foreign-trade-selection/)
  • WordPress 301 重定向插件深度评测(链接到 /wordpress-plugins/redirection-review/)
  • 网站迁移后网站地图提交清单(链接到 /seo-notes/sitemap-after-migration/)

FAQ

换域名后 404 多久会影响排名?

搜索引擎爬虫遇到 404 会多次回访确认,如果持续几周都是 404,就会被判定为永久删除并移出索引,排名开始明显下滑。建议在迁移后 48 小时内完成 301。

301 重定向会不会丢失权重?

Google 表示 301 会传递大部分权重,但有小幅损耗(类似 1-10%)。相比 404 直接清零,301 是唯一正确选择。

旧域名必须续费吗?

至少续费一年,并保持 301 至少 180 天。即使 180 天后,如果还有用户收藏旧链接,继续保留重定向也没有坏处。

百度对 301 识别慢怎么办?

百度站长平台提交网站改版,并坚持保持 301 稳定。百度对批量改版需要人工审核,通常 1-2 周生效。

相关文章

相关项目:AumCreate 项目记录