学习永不停止
我们一起努力吧!

实现两个wordpress网站同步(其中一个网站)数据文章_无须插件

简考题库免费下载

实现背景:一朋友最初时因为想建一个单页网站,于是买了一个储存量和速度不太好的国内虚拟主机,在备案成功直接绑定开始使用,过了一两年后渐渐觉得,这个单页网站由于没有管理后台,平时发一下文章都很困难,更别说利不利于SEO优化了。经过考虑后决定从省资源及省备案时间角度,用回这个域名以wordpres开源程序重新构建一个网站。不过,他仍然面临着这样的问题:原空间配置很低,按wp程序来说,放上数十篇百来篇文章勉强可以应付,过多则打开会非常缓慢;空间商说过,不带www的域名绑定其他空间,将会注销备案信息;在原空间商处升级主机数据库配置,费用昂贵得望而却步。所以朋友打算这样去做:自己还有一个香港的主机空闲着,用这个主机绑定WWW的域名,而原不带WWW的域名仍然绑定在原国内主机以应付检查,也就是说,带WWW和不带WWW的网站相当于两个独立的网站,两网站运行后将实现同时共用其中一个网站数据文章的效果。

朋友从网上了解了一下,将两个wordpress站点实现完全同步并没有很详细的文章介绍,有几篇文章倒是说到用wordpress同步插件可以实现,但都没有很详细的说明,朋友简单试了一下,遇到失败后就另想他法了。于是他就自行摸索了这个方法:数据库实现同享于两个主机网站。

这个原理其实很简单,wordpress网站的数据文章都要依托于sql数据库文件进行写入读取,文章数据一不一样得看网站的在这里的读取情况。不过很多空间商都限制自己的数据库外链挂接,也就是说只能够在同一主机上使用,朋友的两个主机刚好是这种情况。有了方案就有了应付的办法,朋友在*宝上购买了一个可以价格很优惠并且可以挂外链的数据库。在安装网站时,带WWW和不带WWW的域名都直接绑定在这里,这样,无论哪一个网站写文章都会同步到另一个网站上面,完全实现同步效果!

说到这里,细心的朋友会说,wordpress网站的数据库都是绑定同一个域名的,里面字符稍变一下都有可能导致管理后台打不开。确实是这样,很多朋友更换网站域名都是在数据库中找到类似这个表文件:wp_options,将下面的“siteurl”和“home”换成自己新的域名即可。这种方法对于绑定同一个主机带WWW和不带WWW影响不大,但对于不同主机的域名则意味着:绑定一个,另一个打开不正常!对于这个问题,朋友借鉴了网上的“WordPress绑定多个域名的方法”:

打开WordPress目录下的wp-config.php文件,在里面添加下面这段内容:

/* Enable multiple domains access. */
$current_sitename= $_SERVER[‘HTTP_HOST’];
if ($current_sitename == “www.AAA.com”) {
    define(“WP_SITEURL”, “http://www.AAA.com”);
    define(“WP_HOME”, “http://www.AAA.com”);
} elseif ($current_sitename == “www.BBB.net”) {
    define(“WP_SITEURL”, “http://www.BBB.net”);
    define(“WP_HOME”, “http://www.BBB.net”);
}

注意上述代码需要添加在
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . ‘wp-settings.php’);
的前面。

上面的这段代码根据HTTP请求中的参数修改了WP_SITEURL和WP_HOME常量,WordPress正是靠这两个常量来判断站点的地址。
由于配置文件中定义的常量具有较高的优先级,覆盖了数据库中定义的站点地址,因此可以同时实现多个域名进行访问。

不过,这种方法被指带有“暴力”,对搜索引擎不太友好,有直接被当成镜像网站的嫌疑。但个人认为,就单单一个带WWW和不带WWW的同一个二级和顶级域名,并没有什么影响!

本文只是表达出一种解决方案,至于后面的加上一些301重定向之类的处理方法,大家根据实际自行修改一下吧!

未经允许不得转载:http://jdks100.com/风语守望_博客 » 实现两个wordpress网站同步(其中一个网站)数据文章_无须插件


分享到:更多 ()
关注“公众平台”:     资源分享QQ群(517095212):

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  • 4 + 3 = ?

风语守望_博客,共同学习,一起成长!

网站首页联系我们
防复制