Submitted by hoaiphan on Tue, 09/04/2012 - 15:16
Forums:
Mô hình multi-site trong Drupal
Cơ sở dữ liệu
- db_website1: sử dụng cho website1.com
- db_websiten: sử dụng cho websiten.com
- db_share: cơ sở dữ liệu dùng chung
Kết nối cơ sở dữ liệu
Trong file settings.php của website1.com
<?php
$db_url = 'mysql://username:<a href="mailto:password@localhost">password@localhost</a>/db_website1';
$db_prefix = array(
'default' => 'w1_',
'users' => 'db_share.',
'users_roles' => 'db_share.',
'sessions' => 'db_share.',
'role' => 'db_share.',
'authmap' => 'db_share.',
);
?>
Trong file settings.php của websiten.com
<?php
$db_url = 'mysql://username:<a href="mailto:password@localhost">password@localhost</a>/db_websiten';
$db_prefix = array(
'default' => 'wn_',
'users' => 'db_share.',
'users_roles' => 'db_share.',
'sessions' => 'db_share.',
'role' => 'db_share.',
'authmap' => 'db_share.',
);
?>
Độ ưu tiên trong multi-site
Ví dụ với một site có đường dẫn như sau: http://www.drupal.org/mysite/test/ thì độ ưu tiên trong thư mục sites sẽ là:
1. sites/www.drupal.org.mysite.test
2. sites/drupal.org.mysite.test
3. sites/org.mysite.test
4. sites/www.drupal.org.mysite
5. sites/drupal.org.mysite
6. sites/org.mysite
7. sites/www.drupal.org
8. sites/drupal.org
9. sites/org
10. sites/default
Độ ưu tiên được sắp xếp từ 1 -> 10, nghĩa là khi truy cập vào đường dẫn http://www.drupal.org/mysite/test/ thì hệ thống Drupal sẽ tìm file thông tin cấu hình của site đó theo ưu tiên từ 1 là thư mục sites/www.drupal.org.mysite.test nếu không có thì bỏ qua và tiếp tới các thư mục ưu tiên khác. Nếu có dừng lại đọc thông tin cấu hình trong thư mục đó.