一般情况可以这样理解,WordPress.org提供的WordPress系统就像是一个Class,放置在网站上被访问时会根据不同的配置(数据库中保存的设置)生成出一个WordPress运行实例,各不同的配置(设定的主题,插件)实例化出各不相同的基于WordPress系统的网站。
反过来说,各不相同的WordPress网站的原因在于不相同的配置。
如果在同一个服务器上可以根据不同的域名访问来指定不同的配置的话,这样即可实现不同的网站。
很高兴,php能做到这很基本一点判断。
在服务器上配置有两个站:WWW.AAAA.COM 和 WWW.BBBB.COM 现在都是基于WordPress系统,在wp-config.php里面加上这样一段:
if($_SERVER["HTTP_HOST"]=="WWW.AAAA.COM" || $_SERVER["HTTP_HOST"]=="AAAA.COM"){
define('DB_NAME', 'AAAA');
define('DB_USER', 'AAAA');
define('DB_PASSWORD', 'HTTP://AAAA.COM');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
$table_prefix = 'aaaa_';
define ('WPLANG', 'zh_CN');
}else if($_SERVER["HTTP_HOST"]=="WWW.BBBB.COM" || $_SERVER["HTTP_HOST"]=="BBBB.COM"){
define('DB_NAME', 'AAAA');
define('DB_USER', 'AAAA');
define('DB_PASSWORD', 'HTTP://BBBB.COM');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
$table_prefix = 'bbbb_';
define ('WPLANG', 'zh_CN');
}
很明显,这个配置文件会根据不同的$_SERVER["HTTP_HOST"]来给出不同的数据库表的配置,一个数据表的前缀是 aaaa_ 而另外一个是bbbb_,就算在同一个数据库里面也不会冲突。各自有了独立的数据库配置,在同一个优化好的WordPress系统下能互不干扰的运行起来。再加上不同的主题风格、和插件,各自选择性的使用。
怎么样?这样就可以基于一份WordPress系统拷贝,理论上可以无限的运行多个不同风格的WordPress实例了。
小提示:虚拟主机需要先绑定域名才能实现。