WordPress 更换域名后完美 301 跳转方案

最近给个人博客更换了域名,更换完成后需要做新老域名的 301 跳转,比如访问 https://zlbk.net(老域名)自动跳转到 https://imzl.com(新域名),无缝切换。

不仅提升访客体验,还可以转移网址权重、搜索引擎收入。本文主要记录域名 301 的方法。

使用 WordPress 程序实现对应 URL 301 跳转

  1. 需要注意,本文提供的方法需要保留原站点 WordPress 文件,如果直接在原程序代码上跑了 SQL 替换域名,老域名没有绑定另外的 WP 站点,无法使用该方法。
  2. 找到 WordPress 根目录下的 wp-blog-header.php 文件,并在文件第一行 <?php 下方加入以下代码:
// WordPress 更换域名 301 跳转
// 请将 imzl.com 替换为你的新站域名
if (strtolower($_SERVER['SERVER_NAME'])!='imzl.com')
{
$URIRedirect=$_SERVER['REQUEST_URI'];
if(strtolower($URIRedirect)=="/index.php")
{
$URIRedirect="/";
}
header('HTTP/1.1 301 Moved Permanently');
header('Location:https://imzl.com'.$URIRedirect);
exit();
}
  1. 替换服务器上的对应文件,解决。

通过 Nginx 实现站点对应 URL 301 跳转

该方法无需保留 WordPress 程序代码。

  1. 找到 Nginx 文件,在 server_name 下方添加如下代码:
// 请将 imzl.com 替换成你的新站点域名
return 301 https://imzl.com$request_uri;
  1. 将修改后的 Nignx 文件上传,并通过终端使用 service nginx restart 命令重启 Nginx。