创建免费账号 登录

检测

SEO 检测 爬虫 AI 可见度 网站对比

研究

Keyword Explorer 网站宕机了吗? 全部 SEO 工具76

工具

页面 SEO11
元标签分析器搜索结果摘要预览标题结构检测图片替代文字检测Open Graph 与社交预览检测结构化数据验证器Canonical 标签检测链接分析hreflang 检测Favicon 检测无障碍检测工具
技术 SEO11
全站检测(爬虫)robots.txt 测试工具XML 站点地图检测重定向检测批量 HTTP 状态检测HTTP 响应头检测失效链接检测可索引性检测移动端适配检测JavaScript SEO 检测Cookie 与跟踪器扫描
速度与性能11
页面速度测试Core Web Vitals 检测服务器响应时间(TTFB)测试页面大小检测Gzip 与 Brotli 压缩测试HTTP/2 和 HTTP/3 检测CSS 压缩工具JavaScript 压缩工具图片压缩与 WebP 转换器HTML 压缩工具网站碳排放计算器
内容与关键词8
关键词密度检测关键词建议工具字数统计可读性检测文本与 HTML 比例检测网址 Slug 生成器大小写转换器重复内容检测
生成器10
元标签生成器robots.txt 生成器结构化数据生成器Open Graph 生成器XML 站点地图生成器重定向生成器(.htaccess 与 Nginx)hreflang 标签生成器UTM 推广网址生成器llms.txt 生成器Favicon 生成器
域名与安全14
SSL 证书检测安全响应头检测DNS 查询WHOIS / 域名查询域名年龄查询混合内容检测网站 IP 与主机查询Ping 测试 – 网站在线吗?网站技术检测SPF、DKIM 和 DMARC 检查工具DNS 传播检查工具黑名单检查工具网站正常运行时间监控开放端口检测
AI 搜索与 AI 写作11
AI 搜索就绪度检测AI 标题与元描述生成器AI 常见问题与结构化数据生成器AI 内容简报生成器AI 内容优化器AI 页面 SEO 评审AI 搜索意图与页面匹配AI 竞品内容缺口AI 内容检测器AI 替代文本生成器AI 标题生成器

学习

SEO 指南 SEO 问题指南 价格

偏好设置

主题
技术 SEO

SEO 中的重定向:301、302 以及如何安全地迁移网站

当 URL 变化时,重定向可以留住访客和排名。了解应该使用哪种重定向、如何避免重定向链和循环,以及一份分步计划,帮助你迁移网站而不损失流量。

URL 会变化。页面会改名,产品会停产,网站会迁移到 HTTPS,品牌会更换域名。每当 URL 变化时,重定向都会把访客和搜索引擎从旧地址带到新地址,并把旧页面的排名和链接一并带过去。

把重定向弄错,是损失搜索流量最快的方式之一。而把它做对,主要靠的是规划。

主要的重定向类型

状态码 名称 适用情况
301 永久移动(Moved Permanently) 页面已永久迁移。最常见的 SEO 重定向。
308 永久重定向(Permanent Redirect) 与 301 相同,但请求方法(如 POST)不能改变。
302 已找到(Found,临时) 迁移是临时的,原 URL 还会回来。
307 临时重定向(Temporary Redirect) 与 302 相同,但保留请求方法。

对 SEO 来说,关键的区别是永久与临时。使用永久重定向时,搜索引擎会在索引中用新 URL 替换旧 URL。使用临时重定向时,它们通常会继续收录旧 URL,因为你说过它还会回来。

Google 表示 301 和 302 重定向都会传递 PageRank。但如果你对永久迁移使用 302,Google 可能会更长时间地显示旧 URL。永久的变化请使用永久重定向。

应避免的重定向

meta refresh 重定向(<meta http-equiv="refresh">)和 JavaScript 重定向可以工作,但速度更慢,对爬虫来说不够可靠,还会让按下返回按钮的用户感到困惑。尽可能使用服务器端重定向。

重定向链是指 URL A 重定向到 B,B 又重定向到 C。每一跳都会增加延迟,而且爬虫在几跳之后可能就不再继续跟踪。更新重定向,让每个旧 URL 都直接指向最终目的地。

重定向循环(A 重定向到 B,B 又重定向回 A)会让页面根本无法加载。

重定向检测

追踪重定向链的每一跳,查看状态码和耗时。

打开重定向检测

应该重定向到哪里

把每个旧 URL 重定向到最相关的对应新页面:

  • 旧产品 → 替代产品;如果没有替代品,就重定向到它所属的分类
  • 旧文章 → 该文章的更新版本,或最相关的文章
  • 旧分类 → 新分类

避免把所有页面都重定向到首页。Google 往往会把指向首页的不相关重定向视为软 404,信号不会被传递,访客也会感到困惑。如果确实没有对应的页面,一个有帮助的 404 或 410 页面会更好。

如何设置重定向

Apache(.htaccess)

大多数 cPanel 共享主机使用 Apache。在网站根目录的 .htaccess 文件中添加规则:

Redirect 301 /old-page /new-page

Nginx

location = /old-page { return 301 /new-page; }

CMS 插件和设置

Redirection 等 WordPress 插件,以及 Yoast 和 Rank Math 中的重定向管理器,可以让你无需修改服务器文件就能添加重定向。Shopify、Wix、Squarespace 和 Webflow 都内置了重定向设置。

重定向生成器(.htaccess 与 Nginx)

为 Apache .htaccess 和 Nginx 创建 301 重定向规则,包括 HTTPS 和 www。

打开重定向生成器(.htaccess 与 Nginx)

网站迁移:分步计划

迁移(新域名、新 CMS、新 URL 结构或 HTTPS)会一次性改变许多 URL。要认真规划。

迁移之前

  1. 建立基准。 从 Search Console 和统计工具中记录当前的流量、排名和已收录页面。
  2. 抓取旧网站,导出每一个 URL,再加上站点地图中的 URL、统计工具中的着陆页和外链数据中的 URL。拥有外部链接的页面最重要。
  3. 制作重定向映射表:一个列出每个旧 URL 及其新目的地的表格。
  4. 保留有效的东西。 如果能保持 URL 不变,就保持不变。每个改变的 URL 都带有一定风险。
  5. 在用密码保护(而不仅仅是用 robots.txt 屏蔽)的测试环境中准备好新网站。

上线当天

  1. 在新网站上线的同一时刻让重定向生效。
  2. 移除所有测试环境的限制(密码、Disallow: /、noindex)。
  3. 抽样测试旧 URL,尤其是高流量和外链多的 URL。
  4. 更新内部链接,让它们直接指向新 URL。
  5. 在 Search Console 中提交新的站点地图。如果更换了域名,请使用 Search Console 的地址更改工具。
批量 HTTP 状态检测

一次检查最多 25 个网址的状态码、重定向和响应时间。

打开批量 HTTP 状态检测

迁移之后

  1. 抓取新网站,查找失效链接、重定向链和缺失的页面。
  2. 每天在 Search Console 中监控抓取错误和收录变化。
  3. 关注 404 报告中被你遗漏的旧 URL,并为它们添加重定向。
  4. 保留重定向至少一年;对于拥有有价值外链的 URL,应永久保留。

最初几周出现一些排名波动是正常的。持续的下滑通常意味着缺少重定向、抓取被屏蔽,或者内容被删除或修改了。

从 HTTP 迁移到 HTTPS

迁移到 HTTPS 时,用 301 把每个 HTTP URL 重定向到对应的 HTTPS URL,把内部链接和 canonical 标签更新为 HTTPS,并在一切正常后添加 HSTS 标头。检查是否存在混合内容,即仍通过 HTTP 加载的图片或脚本。

带 www 与不带 www

选择一个版本,把另一个版本重定向过来,让搜索引擎只看到一个网站。对于 SEO 来说选哪个都无所谓,重要的是保持一致。

制作重定向映射表

重定向映射表是迁移中最重要的一份文档。一个简单的表格就足够了:

旧 URL 新 URL 类型 优先级 备注
/services/seo-audit.php /services/seo-audit 301 高 45 个引荐域名
/blog/2019/05/title-tags /blog/title-tags 301 高 自然搜索的主要着陆页
/products/discontinued-x /category/x-alternatives 301 中 没有直接的替代品
/old-promo – 410 低 已过期的活动,没有链接

如何填写:

  1. 从抓取结果、站点地图、统计工具(过去一年的着陆页)、Search Console(热门页面)和外链报告中收集每一个旧 URL。
  2. 把它们与新 URL 对应起来。当 URL 模式发生系统性变化时(例如去掉 .php),一条基于模式的规则就能一次覆盖数千个 URL。
  3. 按流量和链接排定优先级,先测试最有价值的 URL。
  4. 检查重定向链:如果某个旧 URL 已经重定向到别处,就让它直接指向最终的新 URL。

基于模式的重定向

当 URL 以一致的方式变化时,一条规则就能代替数千条单独的重定向。例如,在 Apache 上从每个 URL 中去掉 .php:

RewriteEngine On
RewriteCond %{THE_REQUEST} \s/([^.]+)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=301,L]

或者把博客从 /blog/2019/05/post-name 迁移到 /blog/post-name:

RewriteRule ^blog/\d{4}/\d{2}/(.+)$ /blog/$1 [R=301,L]

在测试环境中仔细测试模式规则,一个小错误就可能重定向不该迁移的页面。

上线后的监控

迁移后的几周里,密切关注:

  • Search Console 和服务器日志中的 404 错误:每一个都可能是你遗漏的 URL
  • “网页索引编制”报告中新 URL 的收录情况
  • 与基准相比,主要着陆页的流量
  • 最重要查询的排名

在搜索引擎重新抓取并处理重定向的几周内,预计会有一些波动。大型网站可能需要几个月才能完全稳定下来。

日常变更中的重定向习惯

不只是迁移时重定向才重要。养成以下习惯:

  • 每当你修改 URL 别名,或删除一个有合理替代页面的页面时,添加 301
  • 添加重定向后更新内部链接,让网站直接链接到最终 URL
  • 每年检查一次重定向列表,消除重定向链,并修复那些指向后来又迁移过的页面的重定向

要点总结

  • 永久迁移使用永久重定向(301 或 308),只有真正临时的变化才使用临时重定向。
  • 把每个旧 URL 重定向到最相关的对应新页面,而不是首页。
  • 避免重定向链和循环;让每个旧 URL 都直接指向最终目的地。
  • 根据抓取、统计和外链数据制作的完整重定向映射表,是任何迁移的核心。
  • 在新网站上线的同一时刻启用重定向,之后密切监控 404。
  • 保留重定向至少一年;对于拥有有价值外链的 URL,应永久保留。

常见问题

重定向应该保留多久?

Google 建议至少保留一年。对于有外链或书签的 URL,永久保留最安全,而且成本几乎可以忽略不计。

重定向会拖慢我的网站吗?

一次服务器端重定向只会增加很小的延迟。多次重定向组成的链会累积起来,所以要直接指向最终 URL。

使用 301 会损失排名吗?

正确映射的 301 重定向通常能保留排名,不过在搜索引擎处理变化的期间可能会出现暂时的波动。

对于已删除的页面,应该用 410 而不是 404 吗?

两者都会告诉搜索引擎页面已经不存在。410 表示它是被有意删除的,可能会稍快一些从索引中移除。对于没有替代品的页面,两者都可以。

redirects301site migration

检测你自己的网站

免费运行 55+ 项检查,每个问题都有修复方法。

免费检测

继续阅读