1、如何使用Drupal搭建多个站点
随着需求的不断增多,当各个功能相互比较独立的时候,大家可能就需要搭建多个站点了.搭建多个站点的方式很多,比如说你可以完全的独立开来,使用不同的数据库,即便是drupal核心也是分开的;你也可以共用一个drupal核心,使用不同的数据库;还有就是共用一个drupal核心,共用部分数据库.
我的环境是vista系统,XAMPP集成环境。对于第一种方式,直接在htdocs目录下面多建几个子目录就可以了,然后分别创建多个数据库。我一般都采用这种方式,因为自己主要是测试学习使用,相应的url为http://localhost/drupal,http://localhost/ubercart等等,其中drupal,ubercart就是htdocs目录下面的子目录,然后分别创建两个数据库,分别设置settings.php文件就可以了。这种方式我想大家都会用。
接下来要介绍的是如何使用同一个drupal核心搭建多个站点,这里是两个。步骤如下,
1, 把drupal核心放到htdocs目录下,而不是下面的子目录中。在sites/all目录下面,创建两个子目录moles和themes,用来放置站点公用的drupal第3方模块和自定义模块,根据你的习惯,可以在sites/all/moles下面再创建两个子目录contrib和custom,前者放置drupal.org下载的drupal第3方模块,后者放置自己开发的drupal模块。
2, 在sites/all目录下面,新建两个子目录:drupal.zhupou.cn,ubercart.zhupou.cn;这里面使用的是域名,在虚拟主机上,你需要设置对应的域名解析,以及子域名设置,我这里讲的仅仅是在本地,没有在虚拟主机上实践过。将sites/default目录下面的settings.php文件,分别拷贝到drupal.zhupou.cn,ubercart.zhupou.cn目录下面,并在这两个子目录下面分别创建moles和themes子目录,用途和上面所讲的一样。
3. 设置drupal.zhupou.cn/settings.php中的配置,主要包括$db_url,和$db_prefix,前者是配置的数据库,包括数据库名,密码。后者配置的是同一个数据库中,共用的部分,独有的部分,共用的部分使用‘shared’前缀,drupal.zhupou.cn自用的使用drupal前缀。所以先配置'default' => ' drupal_',
接着你把要共用的表分别列出来,比如共用用户标,下面就是:
'users' => 'shared_',
'users_roles' => 'shared_',
ubercart.zhupou.cn/settings.php的配置和前面一样,不过它的$db_prefix设置为
'default' =>'ubercart_',
公用和前者一样。当然你还需要设置sites/default/settings.php,设置方式和子站点一样,就是设置默认情况下,使用哪个站点。我经常设置$base_url这个设置,不过好像没有什么用,不设置也能工作。
4.在vista的hosts文件中,添加:
127.0.0.1 drupal.zhupou.cn
127.0.0.1 ubercart.zhupou.cn
5.重起apache,这样就搭起了两个站点,其它就和一个站点一样了。
2、如何搭建drupal7 环境
drupal7并没有什么特别的环境需求,需要一个gd2库,一个pdo库,然后标准的lamp环境或者wamp环境就可以了。装完后,可能想开启clean url的,就需要开apache的url rewrite加上.htaccess,这个官网包里有的。
实际上对于绝大多数情况,wamp环境(windows+apache+mysql+php),用xampp或者wampserver的集成包,装完就能直接去下drupal装上了。
你要稍微进阶一些的,就配置一下apache的vhost。这个能把http://localhost/你的项目名,改换成任意路径,比如http://localhost.我的项目名称名.com 也就是把2级域名换成了1级域名。当然,只能本地用~
3、如何搭建drupal 开发的环境
常见的可以用一键布署软件 XAMPP/WAMP 等等都可以。
如果是需要完全模拟生产环境,那需要建立虚拟机,比如用 vagrant 配合 virtualbox 虚拟机来搭建开发环境。