如何将网站重定向到另一个域名或 URL(2026)

2023年7月4日
6 分钟阅读
如何将网站重定向到另一个域名或 URL(2026)

直接答案

要将一个网站重定向到另一个域名,请从旧地址设置到新地址的永久 301 重定向。如果没有主机托管,请使用域名注册商的域名转发或重定向服务。如果有主机托管,请在 .htaccess(Apache)中添加规则,或在 Nginx 中添加 return 301 行,或者在 WordPress 上使用重定向插件。请同时重定向根域和 www,保留路径,以便每个旧页面都跳转到对应的新页面,确保旧域名上的 https:// 可正常工作,并继续保留旧域名的注册。

无论你是将整个网站迁移到新域名,还是把一个旧 URL 指向新页面,操作都是一样的:让旧地址返回一个到新地址的重定向。合适的工具取决于旧域名所在的位置,以及它是否仍有主机托管。本指南涵盖所有常见选项,包含可直接粘贴的精确代码,以及如何检查结果。

选择合适的方法#

你的情况最佳方法
旧域名没有主机托管,且只有一个目标地址在你的注册商或 DNS 提供商处进行域名转发
网站运行在 Apache 上(大多数共享主机).htaccess 规则
网站运行在 Nginx 上server block 中的一条 return 301 规则
网站运行在 WordPress 上一个重定向插件
完全没有服务器访问权限,而且其他方法都不起作用PHP header 或 JavaScript,作为最后手段
多个域名、逐页映射、旧域名上的 HTTPS 或点击数据像 RedirHub 这样的重定向服务

开始之前#

  • 永久迁移请使用 301。 它会告诉 Google 索引新地址并将排名信号 منتقل到那里。只有在旧地址还会恢复时才使用 302。我们的 重定向类型及其对 SEO 影响的指南 解释了其中的区别。
  • 决定:整个域名还是一个 URL。 域名迁移应保留路径,因此 olddomain.com/pricing 会跳转到 newdomain.com/pricing。单个 URL 重定向会将一个地址发送到一个页面。
  • 同时覆盖根域和 www。 访问者会输入 olddomain.com 和 www.olddomain.com。两者都需要重定向。
  • 保持旧域名续费有效。 如果它过期,所有重定向和所有旧链接都会失效。

方法 1:在注册商处转发域名(无需托管)#

大多数注册商和 DNS 提供商都可以在没有任何托管服务的情况下转发域名。菜单名称不同,但步骤类似:

  1. 登录管理旧域名的注册商或 DNS 提供商。
  2. 打开域名设置,找到转发、重定向或 URL 重定向。
  3. 输入完整的目标地址,包括 https://。
  4. 如果此次迁移是永久性的,请选择永久(301)重定向。
  5. 保存,然后等待更改生效。DNS 更新可能需要几分钟到几个小时。

我们提供了 GoDaddy 域名转发、Namecheap 重定向 和 Cloudflare 重定向 的分步指南。注册商转发是免费的,适合一个域名指向一个地址。之后请检查两点:<https://olddomain.com> 是否能在没有证书警告的情况下重定向,因为不同服务商对 HTTPS 的支持各不相同;以及路径是否被保留,还是所有请求都落到主页。

方法 2:Apache(.htaccess)#

如果旧网站仍在 Apache 上运行,请打开网站根目录中的 .htaccess 文件(如果不存在就创建一个)。要将一个 URL 重定向到另一个:

apacheRedirect 301 /old-page https://newdomain.com/new-page

要迁移整个域名并保留所有路径,同时覆盖根域和 www:

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

方法 3:Nginx#

在 Nginx 中,为旧域名添加一个 server 块,返回 301 并保留请求的路径。对于 HTTPS,将证书相关配置行添加到同一个块中:

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

对于单个页面,在旧路径对应的 location 块中放入 return 301 https://newdomain.com/new-page;。更改后重新加载 Nginx。

方法 4:WordPress#

在 WordPress 中,你不需要碰服务器文件:重定向插件让你可以在管理界面添加旧网址和新网址。我们的WordPress 重定向指南会逐步讲解各个选项。要将整个 WordPress 站点迁移到新域名,应该改为在服务器或 DNS 层级进行重定向,这样就能覆盖所有旧网址。

方法 5:PHP 或 JavaScript(最后手段)#

如果你只能编辑页面文件,PHP 头信息可以作为真正的服务器端重定向。请自行设置 301,因为 PHP 默认发送 302:

php<?php
header("Location: https://newdomain.com/new-page", true, 301);
exit;

JavaScript 只会在页面加载后运行,而且只有在 Google 渲染页面时才可能跟随它,因此仅在别无选择时使用:

javascriptwindow.location.replace("https://newdomain.com/new-page");

检查重定向是否生效#

在无痕窗口中打开旧地址,分别带和不带 www,以及带 https://。要查看状态码,请运行curl -I https://olddomain.com,并在 Location 行中查看 301 和新地址,或者在我们的重定向速度测试中输入旧域名。

您的重定向正常工作吗? 输入您的域名。您将看到状态码(301 或 302)、跳转到哪里、HTTPS 是否有效,以及它从华盛顿、法兰克福和东京的响应速度,并与过去 7 天内测试过的每个重定向进行排名比较。

测试我的重定向

方法 6:使用 RedirHub 在无需托管的情况下重定向域名#

RedirHub 代替旧域名进行响应,因此您不需要服务器。您的 DNS 和电子邮件保持不变;您只需更改根域和 www 记录。

  1. 在仪表板中,开始一个新的 域名重定向。
  2. 在 重定向来源 中,输入旧域名,例如 oldbrand.com。根域名也会包含 www。
  3. 在 重定向目标 中,输入新地址,例如 https://mybrand.com。
  4. 在 重定向类型 下,选择 301 · 永久。
  5. 在 路径 下,域名迁移请选择 保留路径;若要将每个页面都发送到同一个地址,请选择 全部重定向到一个 URL。
  6. 点击 创建重定向。
  7. 连接域名:在 主机名 中,打开 连接 DNS,在你的 DNS 提供商处添加所示记录,然后点击 我已经完成更改。
RedirHub dashboard: New domain redirect from oldbrand.com to https://mybrand.com with 301 · Permanent and Keep the path selected; What happens shows oldbrand.com/about going to mybrand.com/about
注册商转发RedirHub
Cost通常随域名免费提供起价每月 49 美元(Core);Pro 计划提供 14 天免费试用
旧域名上的 HTTPS因提供商而异针对根域和 www 自动签发并续期
Paths因情况而异;通常所有流量都会转到一个地址保留路径,或将每个旧 URL 映射到其自己的新页面
重定向类型通常是 301 和 302301、302、307、308 和框架重定向
在它回答的地方注册商的转发服务器130 个全球边缘位置(PoP),靠近每一位访客
许多域名一次一个每次重定向可设置多个源域名;所有套餐均支持 CSV 导入
查看它是否被使用通常没有数据已过滤掉机器人后的点击量和独立访客

对于一个域名指向一个地址,注册商转发是免费的,也足够好用。当你要迁移一个包含许多页面的网站、管理多个域名,或想知道旧域名是否仍带来访客时,RedirHub 就值得使用。

如果旧域名仍在提供一个无法从当前平台迁出的在线网站,你就完全不必更改 DNS。使用 集成模式,你的 Cloudflare Worker、Vercel 上的 Next.js 应用或 Caddy 服务器会从 RedirHub 获取重定向规则并提供服务,而且每次重定向仍会显示在你的 RedirHub 分析中。

如果你要迁移整个网站,网站迁移映射会将每个旧 URL 指向对应的新页面。如果你拥有一个 转发域名组合,例如拼写错误域名和国家/地区域名,你可以在一个地方统一管理它们,并且每个域名都会获得根域和 www 的 自动 SSL 证书。

常见错误#

  • 忘记 www 或 https。 请测试旧地址的全部四种版本:有和没有 www,以及 http 和 https。
  • 把每个页面都指向首页。 访客会丢失他们想要的页面。请保留路径,或逐页映射。
  • 在永久迁移时使用 302。 Google 可能仍会在搜索结果中显示旧域名。
  • 进行重定向链式跳转。 旧域名到旧站点再到新站点,每次都会多一次跳转。请直接指向最终地址。
  • 让旧域名过期。 只要旧链接仍在带来访客,就持续续费。

常见问题

为旧域名设置到新域名的 301 重定向:如果没有主机,就使用注册商的域名转发;如果有主机,就使用 .htaccess 或 Nginx server block;或者使用重定向服务。将根域和 www 都重定向,并保留路径,这样每个页面都会落到对应的匹配页面。

可以。大多数注册商都包含域名转发,如果你已经有主机,.htaccess、Nginx 和 WordPress 插件也不需要额外费用。请检查旧域名上的 HTTPS 是否可用,以及是否保留路径,因为这两点会因服务商而异。

可以。使用注册商的域名转发,或者将域名的 DNS 指向一个重定向服务。这两种方式都不需要 Web 服务器。

对于永久迁移,请使用 301,这样 Google 会索引新域名,并将排名信号转移到新域名。只有当旧域名之后还会再次显示其自身网站时,才使用 302。

如果你使用 301 重定向到匹配的页面,就不会。排名会随着时间迁移到新域名。出现损失通常是因为使用了 302、把所有流量都重定向到首页,或者出现了重定向链。

服务器规则在你保存后就会立即生效。注册商转发和 DNS 更改则可能需要几分钟到几小时才能生效。

RedirHub 可在无需主机的情况下为旧域名提供响应:你将根域和 www 记录指向它,选择 301 或 302,并保留路径或将所有流量发送到一个 URL。HTTPS 会自动签发,你还可以查看每个重定向的点击次数。

Trinayan Chakraborty

TC is the Operations Manager at RedirHub, leading the company’s operational strategy and execution to ensure reliable, scalable redirect infrastructure. He oversees internal processes, cross-team coordination, and platform readiness while supporting customers through complex redirect implementations. With a strong understanding of large-scale domain operations and real-world edge cases, TC plays a key role in aligning product and customer success to deliver stable, high-performance redirection solutions.