Sivo 悉见

16.3 二级域名部署

匿名 · 更新于 2013/12/31

ThinkPHP支持分组的二级域名部署,该功能可以使项目中的多个分组呈现为二级域名的形式,例如经过配置二级域名部署,可以把:
http://domain.com/index.php/Admin/或者http://domain.com/Admin/
变为 http://admin.domain.com/ 访问方式。
先配置域名, 以 apache为例 , 配置如下:
#主域名

  1.     DocumentRoot  D:\htdocs\www
  2.     ServerName domain.com
#子域名
  1.     DocumentRoot  D:\htdocs\www
  2.     ServerName admin.domain.com
  3.     ServerAlias *.domain.com
然后配置host, 以windows为例编辑C:\WINDOWS\system32\drivers\etc\hosts 文件,增加下面两行:
  1. 127.0.0.1  domain.com
  2.  127.0.0.1  admin.domain.com
接下来修改程序的配置文件config.php如下
  1. 'APP_GROUP_LIST'     => 'Home,Test,Admin', 
  2.  'DEFAULT_GROUP'      =>'Home', 
  3.  'APP_SUB_DOMAIN_DEPLOY'=>1, // 开启子域名配置
  4.     /*子域名配置 
  5.     *格式如: '子域名'=>array('分组名/[模块名]','var1=a&var2=b'); 
  6.     */ 
  7.     'APP_SUB_DOMAIN_RULES'=>array(   
  8.         'admin'=>array('Admin/'),  // admin域名指向Admin分组
  9.         'test'=>array('Test/'),  // test域名指向Test分组
  10.     ),