Drupal内置单点登录方案

首先说统一登录不需要统一代码,有的人参照老葛 thinkindrupal里介绍的说要所有站点必须统一使用一套代码,这是不对的,老葛也没有这样说,只不过没有告诉大家这个问题。

要实现内置单点登录,注意以下几项:

1.首先如果不需要统一代码, 那么各站点还是正常安装,网站文件夹都是并列的。

2.几个站点的数据库名字:选一个作为主站,主站的数据库名字比如是test,那么其它子站的数据库必须以主站数据库名为前缀,如:test_a, test_b

3.设置几个站点的cookie_domain为同一个名字,如:test.com (在settings.php里设置)

4.在子站的settings.php中设置统一登录需要的相关数据表的前缀,如:

$databases = array (
  'default' => 
  array (
    'default' => 
    array (
      'database' => 'test_a',
      'username' => 'root',
      'password' => '',
      'host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => array(
        'default' => '',
        'users' => 'test.',
        'sessions' => 'test.',
        'role' => 'test.',
        'authmap' => 'test.',
        'field_data_field_qq' => 'test.',
        'field_revision_field_qq' => 'test.', 
        'cache_field' => 'test.',
      ),
    ),
  ),
);

单纯实现统一登录只需要设置users, sessions两个表统一即可。

如果要同步用户扩展字段,注意除了要同步字段表,还要同步cache_field表,否则无法实时的看到修改后的同步结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值