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表,否則無法實時的看到修改後的同步結果。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章