同一主机上WordPress博客更换域名简易八步骤(2)

精博的域名已经由 essentialblog.cn 改为 jingpin.org,下面介绍我是如何更换域名的。

一、cPanel 上的操作:

在主机的 cPanel 上可以执行以下 4 个步骤:

第一步:添加附加域名

jingpin

在 cPanel 控制面板上找到 “附加域” 这一项,然后添加你的新域名。

第二步:添加数据库

jingpin

在 MySQL 数据库里面生成新的数据库。

第三步:复制文件

jingpin

要把原来域名对应的 WordPress 所有文件复制到新域名的空间上,可以点击“文件管理器”,选择原来域名对应的 WordPress 所有文件和文件夹,点击“复制”,然后输入新域名所对应的文件夹路径,点击 “Copy File(s)”。

第四步:修改 wp-config.php 文件

jingpin

通过 “文件管理器” 打开新域名所对应 WordPress 的 wp-config.php 文件,把旧的数据库改为新的数据库,如果新数据库的用户名和密码和旧数据库的不一样,也需要修改。

二、phpMyAdmin 的操作

这其实也是在 cPanel 上操作,为了强调,这里抽出来讲。

第五步:复制数据库

jingpin

在 cPanel 上点击 phpMyAdmin (中文版 cPanel 翻译成 “phpMy 管理” ),然后选择原来域名的数据库,接着点击“操作”,在“复制数据库到:” 一栏输入新添加的数据库名称(全称,例如 young_jingpin),并取消 “CREATE DATABASE before copying” 前面的勾勾,然后点击“执行”。

第六步:修改数据库

jingpin

 

在 phpMyAdmin 中选择新建的数据库,然后点击 “SQL”,并在输入以下代码:

  1. UPDATE wp_options SET option_value = replace( option_value, ‘http://www.essentialblog.cn’, ‘http://jingpin.org’ ) WHERE option_name = ‘home’ OR option_name = ’siteurl’;
  2. UPDATE wp_posts SET post_content = replace( post_content, ‘http://www.essentialblog.cn’, ‘http://jingpin.org’ ) ;
  3. UPDATE wp_posts SET guid = replace( guid, ‘http://www.essentialblog.cn’, ‘http://jingpin.org’ ) ;

操作时注意把 www.essentialblog.cn 改为你的旧域名,把 jingpin.org 改为你的新域名。

这步完成了之后,你访问新的域名时,就会看到和原来域名一模一样的 WordPress 博客了。但是我弄完之后发现除了主页之外,其他页面都无法访问,后来在胡戈戈同学的指导下,多做了以下一个步骤:

第七步:保存固定链接

jingpin

在 WordPress 管理后台把“设置”选项里面的“固定链接”打开之后,再点击一下“保存更改”就可以了。这步很无聊,但是却不能少。

以上 7 个步骤下来,其实就完成了一件事,那就是复制了一个一模一样的 WordPress 博客。在确保新博客一切链接正常之后,需要把旧域名重新定向到新域名的博客,使得别人访问你的旧域名时,就会转到你的新域名博客,其操作方法如下:

第八步:301 永久重定向

jingpin

在原来域名的 .htaccess 文件上添加以下代码:

  1. RewriteEngine On
  2. RewriteCond %{HTTP_HOST} ^www.essentialblog.cn
  3. RewriteRule (.*) http://jingpin.org/$1 [R=301,L]

如果你之前没有 .htaccess 文件,可以把以上代码复制粘贴到记事本上,并以 “ .htaccess” 作为文件名保存,然后上传到原来域名所对应的 WordPress 文件夹根目录。

顺便说一下,原来 essentialblog.cn 对应的“ .htaccess” 文件上有以下代码:

  1. # BEGIN WordPress
  2. <IfModule mod_rewrite.c>
  3. RewriteEngine On
  4. RewriteBase /
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteCond %{REQUEST_FILENAME} !-d
  7. RewriteRule . /index.php [L]
  8. </IfModule>
  9. # END WordPress

如果不把这个代码删掉,那么 essentialblog.cn 可以正常跳转到 jingpin.org,但是 essentialblog.cn/about 却不能跳转到 jingpin.org/about,把代码删掉之后就可以了。截图上的 .htaccess 的文件还有以下代码:

  1. RewriteCond %{HTTP_HOST} ^essentialblog.cn
  2. RewriteRule (.*) http://www.essentialblog.cn/$1 [R=301,L]

这则代码是把 essentialblog.cn 定向到 www.essentialblog.cn 的,这样如果有人访问 essentialblog.cn/about,那么他们也会看到 jingpin.org/about 而不是 404 错误页面。

到这里,整个域名的更换算是完成了,以后你就可以直接在新域名对应的 WordPress 上写博客了。

 

Published by

风君子

独自遨游何稽首 揭天掀地慰生平