我一直就有多个网站存在,而且一直都在更新,以前喜欢玩,所以每个网站的CMS使用的都不一样,现在懒得多了,所以,都转到最方便的WordPress下面了,一直很喜欢Drupal的多站点功能,但是Drupal使用起来还是不如WordPress方便,虽然功能强大得多,不过WordPress已经足够我使用了。
今天把 Cary Agos 下面的所有网站都放到了本博客的系统里面去,也就是开启了本站的多站点功能,然后将以前独立的数据都导入到这一个数据里面,使用同样的程序文件,这样方便升级管理,其实整个过程很简单。
第一步:修改虚拟主机配置文件,将所有需要的域名都添加到该虚拟主机上
我的配置文件如下:
server {
listen 80;
server_name caryagos.com *.caryagos.com;
autoindex on;
root /home/caryagos/websites/caryagos.com/public;
error_log /home/caryagos/websites/caryagos.com/logs/error.log;
access_log /home/caryagos/websites/caryagos.com/logs/access.log;
index index.php index.html index.htm;
location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location / {
try_files $uri $uri/ @rewrite;
}
location @rewrite {
rewrite ^/(.*)$ /index.php?$args;
}
}第二步:修改WordPress 配置文件
我们需要在 WordPress 文件中添加下面这一行:
/* Multisite */
define('WP_ALLOW_MULTISITE', true);这里再访问后台的话,我们需要先进入插件管理页面以确定所有插件都支持 Multi Site 功能,如果不支持的话,我们需要暂停使用或者看看有没有支持 Multi Site 功能的相关的插件。
第三步:配置网络
这一步很简单,进入 工具 &glt; 配置网络页面,按里面的流程来做即可。其实就是输入网络的名称和管理员邮箱,保存之后,会要求你修改WordPress 配置文件,如我的只需要在配置文件里面添加下面这几行即可:
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'www.caryagos.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);做完上面这些步骤之后,需要重新登陆。后台已经有了改变了,原来的后台分为了网络控制面板和站点控制面板,网络控制面板是给网络的管理员使用的,而站点控制面板则是给那一个站点的管理员使用的,现在如果要安装插件,只有管理员能安装,安装之后需要在整个网络中启用,站点管理员才能再启用,站点管理员不能单独安装。
第四步:安装必要的插件
为了达到自己的需求还需要安装一些第三方插件,最主要的一个插件是WordPress MU Domain Mapping,它让我们可以为每一个子站点添加独立的域名,而不只是使用主站点域名的二级域名,访问网络管理控制面板,打开插件安装界面,搜索“WordPress MU Domain Mapping”之后安装即可。
安装WordPress MU Domain Mapping
安装完WordPress MU Domain Mapping插件之后,还需要对其进行一些设置,打开设置标签,可以看到多出了两个设置选项,一个是插件设置,一个是域名管理,根据提示我们可以看到,还需要做一部操作,就是在文件系统中,把sunrise.php这个文件移动到wp-content目录,很简单:
$ cd wp-content
$ cp plugins/wordpress-mu-domain-mapping/sunrise.php ./
之后还需要修改WordPress配置文件,加入下面这一行配置:
define('SUNRISE', 'on' );这时已经完成了该插件的安装。
安装导入工具以及其它插件
其它插件都必须要在 Network 控制面板里面安装,这个和我们以前使用的是一样的。
第五步:创建站点,导入数据并绑定域名
创建站点之后,我需要先导入数据,方法很简单,把所有数据从原网站导出,然后导入即可,需要选择下载所有文件至新服务器,导入完成之后,使用二级域名先测试访问一下,但是否所有数据都已经导入成功,如果测试发现所有数据已经导入完成,那么就可以把域名的绑定到新的站点上,然后修改域名的CNAME 至服务器主域名或者A记录至服务器的IP地址即可,等域名生效之后,即可发现网站现在已经转移完成,老网站可以选择性的删除,当然了,配置、主题等等的都需要重新弄了,尤其是主题。
域名绑定完成之后,需要选择一个主域名,所有绑定的域名都将被转向至设定的主域名之上,比如我的 Our Aier 这个网站,你可以访问下面三个地址中的任何一个:
- http://ouraier.com
- http://www.ouraier.com
- http://aier.caryagos.com
但是最终都会被转向至 http://ouraier.com 这个地址。