• 欢迎访问极客公园网站,WordPress信息,WordPress教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入极客公园 QQ群
  • Git主题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 最新版Git主题已支持说说碎语功能,可像添加文章一样直接添加说说,新建说说页面即可,最后重新保存固定连接,演示地址
  • 百度口碑求点赞啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊http://koubei.baidu.com/s/gitcafe.net
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏极客公园吧

WordPress搬家更换域名,实现301完美重定向!

未分类 博客教主 14年前 (2010-07-24) 5702次浏览 1个评论

博客搬家比较常见,普通的转移空间大家都知道,操作难度及步骤都比较简单,一般只要对WP熟悉点的都能快速完整地进行。今天谈一下搬家之更换域名,更换域名,说简单了,就是单纯的换个域名,但要真正做到无缝迁移就要费一番周折。既要保证网站正常运行,还要做到PR及搜索引擎来路不丢失,也就是通常说的301转向,下面就详细讲解。

一、搬家更换域名

为了实现后面的完美301转移,需要建立一个新站,即不更改原站A,建立新站B。

1.备份导入 备份导出A站数据库,并导入到新站B数据库中。建议使用WordPress Database Backup进行数据库备份工作。

2.更换域名 做完第一步工作之后,此时新站B尚不能正常访问,还需更改数据库中的域名地址。

方法一:在导入备份的数据库前使用文本编辑器查找替换原域名为新域名,此方法的好处是一步到位,但缺点是数据库乱码,不易编辑修改。

方法二:直接在数据库中进行SQL语句查询。重点推荐此方法,简单快捷。只需打开数据库,使用下列查询语句即可完成地址及文章内链的修改。

UPDATE 表名_options SET option_value = replace(option_value, ‘旧域名(不带/)’, ’新域名(不带/)’) WHERE option_name = ‘home’ OR option_name = ’siteurl’;

UPDATE 表名_posts SET guid = replace(guid, ’旧域名(不带/)’, ’新域名(不带/)’);

UPDATE 表名_posts SET post_content = replace(post_content, ’旧域名(不带/)’, ’新域名(不带/)’);

然后直接使用/wp-admin/登录后台,打开设置、常规,你会发现这里还是旧域名,把它该正过来,至此,域名更换完成,可以正常访问新站B了。
第七日

二、完美301转向

可能有的同学会问,前面的工作也可以在原站A上完成,但为什么还要建立新站B呢?这就完美转移的关键了,其实只要了解WP的都会发现,WP只能绑定一个地址,如果你用的是诸如ha97.com顶域名作为地址,那就不能用http://www.macd11.com这个子域作地址,反之亦然。而空间绑定另一个地址的话,只有首页绑定,内页永久链接是不变的。

因此,我们要建立新站B,旧站A只是提供一个301过渡,这样就形成了一个WP的301完美转移。 前面的更换域名做完之后,操作就相当简单。只需把原站A的”.htaccess”文件用文本编辑器打开更改为以下即可(适用于Linux主机,Windows主机可用其他方式转向)。

# BEGIN WordPress
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
rewritecond %{http_host} ^www.a.cn [nc]
rewriterule ^(.*)$ http://www.b.com/$1 [L,R=301]
</IfModule>
# END WordPress

做完之后可以301转向测试看一下结果。以后就可以正常使用新站B了,但要注意的是保持原站A至少两个月不删除,以便新站正常收录。只要肯钻研,问题总能找到完美的解决方案,这次的域名更换可谓相当成功,到目前为止,更换域名不足一天,Google已收录新站19页,访问量没有丝毫减退。

附:WP更换域名实用SQL查询语句

UPDATE 表名_options SET option_value = replace(option_value, ‘旧域名(不带/)’, ’新域名(不带/)’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

UPDATE 表名_posts SET guid = replace(guid, ’旧域名(不带/)’, ’新域名(不带/)’);

UPDATE 表名_posts SET post_content = replace(post_content, ’旧域名(不带/)’, ’新域名(不带/)’);

更换域名后只需要到MYSQL的后台执行以上语句就会自动替换所有原由的旧域名为新的域名,这样就免去了WP在更换域名时的麻烦了。


极客公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:WordPress搬家更换域名,实现301完美重定向!
喜欢 (0)

您必须 登录 才能发表评论!

(1)个小伙伴在吐槽
  1. 如果是多个域名的话该怎么设置? 比如说 我想把A.com www.a.com www.b.com 重定向到b.com(就是把不带www的作为我的主推的)该怎样设置?