1. Vì sao Drupal multisite đặc biệt rủi ro khi backup?
Drupal multisite cho phép:
Nhiều website
Dùng chung một codebase
Mỗi site có cấu hình, dữ liệu riêng
Ưu điểm:
Dễ quản lý code
Tiết kiệm tài nguyên
Triển khai nhanh
Nhưng rủi ro lớn nhất là:
Một lỗi backup hoặc restore có thể làm hỏng nhiều website cùng lúc.
📌 Backup multisite không thể làm theo cách “một site đơn lẻ”.
2. Cấu trúc Drupal multisite cần hiểu rõ
Một hệ thống Drupal multisite điển hình:
/web├── core/├── modules/├── themes/├── sites/│ ├── default/│ ├── siteA/│ │ ├── files/│ │ └── settings.php│ ├── siteB/│ │ ├── files/│ │ └── settings.php│ └── sites.php
📌 Mỗi site có:
Database riêng (hoặc schema riêng)
Files riêng
Cấu hình riêng
3. Nguyên tắc cốt lõi khi backup Drupal multisite
Phân biệt rõ phần dùng chung và phần riêng
Không backup “gom chung” mù quáng
Có khả năng restore từng site độc lập
Tránh single point of failure
4. Nhóm dùng chung cho toàn bộ multisite
4.1. Codebase dùng chung
Drupal core
Module dùng chung
Theme dùng chung
📌 Có thể tái tạo từ Git / Composer, nhưng vẫn nên backup để phục hồi nhanh.
4.2. File sites.php
Mapping domain → site folder
Quyết định site nào được load
📌 Sai sites.php = site không truy cập được.
5. Nhóm RIÊNG cho từng site (bắt buộc backup)
5.1. Database từng site (quan trọng nhất)
Mỗi site một database
Hoặc chung DB nhưng khác prefix (không khuyến nghị)
📌 Phải backup từng DB riêng biệt, không dump chung mù quáng.
5.2. Thư mục files của từng site
sites/siteA/filessites/siteB/files
📌 Không trộn files giữa các site.
5.3. File cấu hình từng site
sites/siteA/settings.phpsites/siteB/settings.php
📌 Chứa:
DB credential
Hash salt
Trusted host
Path đặc thù
6. Backup cấu hình Drupal cho multisite
6.1. Configuration Management
Có 2 mô hình phổ biến:
a) Mỗi site một config riêng
config/siteA/config/siteB/
b) Một config chung (ít dùng)
Dễ xung đột
Khó restore chọn lọc
📌 Khuyến nghị: mỗi site một config export riêng.
7. Backup Composer và dependency
composer.jsoncomposer.lock
📌 Dùng chung cho toàn multisite.
8. Backup multisite theo từng lớp
8.1. Backup hằng ngày
Database từng site
Files từng site
8.2. Backup định kỳ
Codebase
Config export
Composer files
8.3. Off-site
Database
Files
Config
9. Restore Drupal multisite đúng cách
9.1. Restore toàn bộ hệ thống
Restore codebase
Restore
sites.phpRestore từng site:
DB
files
settings.php
Import config
Clear cache
Test từng domain
9.2. Restore một site đơn lẻ (rất quan trọng)
Một chiến lược backup đúng phải cho phép:
Restore site A
Không ảnh hưởng site B, C
📌 Nếu không làm được điều này → backup chưa đạt yêu cầu.
10. Sai lầm phổ biến khi backup Drupal multisite
Dump chung toàn bộ database
Gộp files của nhiều site
Không ghi rõ mapping site ↔ DB
Restore nhầm site
Không test restore từng site
11. Checklist backup Drupal multisite
BẮT BUỘC
Database từng site
Files từng site
settings.php từng site
sites.php
RẤT NÊN
Config export từng site
Composer files
Custom module/theme
12. Liên hệ với hệ thống thực tế
Trong hệ thống:
Nhiều website theo phòng ban
Nhiều domain con
Cùng một hạ tầng
Drupal multisite giúp quản lý hiệu quả, nhưng:
Backup sai = sự cố hàng loạt.
Drupal multisite mạnh vì dùng chung,
nhưng backup phải luôn tách biệt.
Một chiến lược backup multisite đúng:
Phân tách rõ ràng
Restore được từng site
Không lan truyền lỗi
- Đăng nhập để gửi ý kiến