Website được thiết kế tối ưu cho thành viên chính thức. Hãy Đăng nhập hoặc Đăng ký để truy cập đầy đủ nội dung và chức năng. Nội dung bạn cần không thấy trên website, có thể do bạn chưa đăng nhập. Nếu là thành viên của website, bạn cũng có thể yêu cầu trong nhóm Zalo "CNTT" các nội dung bạn quan tâm.

Bài 24. Backup website và ứng dụng web

ICT

1. Website / Webapp là gì trong bối cảnh backup?

Một website hay ứng dụng web không chỉ là mã nguồn. Nó bao gồm:

  • Mã nguồn (code)

  • Cấu trúc thư mục

  • File upload của người dùng

  • Cấu hình môi trường

  • Kết nối database

  • Logic nghiệp vụ đang chạy

📌 Vì vậy:

Backup website không chỉ là copy thư mục web.


2. Phân loại thành phần cần backup

2.1. Mã nguồn ứng dụng

  • Code backend

  • Code frontend

  • Theme, module, plugin

📌 Mã nguồn thường có thể tái tạo nếu có repository, nhưng vẫn cần backup trong nhiều hệ thống thực tế.


2.2. Dữ liệu người dùng (rất quan trọng)

  • File upload

  • Media

  • Tài liệu đính kèm

  • Avatar, hình ảnh

📌 Đây là phần không thể tái tạo.


2.3. Cấu hình ứng dụng

  • File cấu hình

  • Environment variable

  • API key (bảo mật cao)


2.4. Nội dung động

  • Nội dung CMS

  • Cấu trúc site

  • Metadata

📌 Thường nằm trong database nhưng liên quan chặt đến webapp.


3. Backup website theo loại hệ thống

3.1. Website tĩnh

  • Backup toàn bộ file

  • Version control khuyến nghị


3.2. Website CMS (Drupal, WordPress, v.v.)

Cần backup:

  • Core (có thể cài lại)

  • Module / plugin

  • Theme

  • sites/default/files hoặc tương đương

  • Database

📌 Database và file upload là bắt buộc.


3.3. Web application tùy biến

  • Source code

  • Build config

  • Runtime config

  • Data directory


4. Nguyên tắc backup website / webapp

  1. Phân biệt code và data

  2. Không backup thừa core có thể cài lại

  3. Đảm bảo nhất quán giữa file và database

  4. Bảo mật dữ liệu backup


5. Đảm bảo tính nhất quán (Consistency)

Một lỗi phổ biến:

  • Backup file lúc 10:00

  • Backup database lúc 11:00

📌 Khi restore:

  • File và DB không khớp → lỗi logic

Giải pháp:

  • Backup theo cặp

  • Ghi rõ timestamp

  • Snapshot hỗ trợ


6. Restore website / webapp đúng cách

Trình tự khuyến nghị:

  1. Restore code

  2. Restore file upload

  3. Restore database

  4. Restore config

  5. Clear cache

  6. Test nghiệp vụ

📌 Không test chỉ bằng “mở được trang chủ”.


7. Backup website trong mô hình nhiều node

Trong hệ thống:

  • Nhiều web server

  • Load balancer

Nguyên tắc:

  • Code đồng nhất

  • Data tập trung

  • Backup từ nguồn chuẩn


8. Sai lầm phổ biến khi backup website

  • Chỉ backup code, quên file upload

  • Chỉ backup DB, quên file

  • Không bảo mật backup

  • Không test restore nghiệp vụ


9. Checklist backup website / webapp

Bắt buộc

  • Database

  • File upload

  • Config

Theo nhu cầu

  • Source code

  • Build artifact


10. Liên hệ với hệ thống thực tế

Trong hệ thống:

  • Website phục vụ người bệnh

  • Webapp phục vụ nhân viên

Backup đúng giúp:

  • Phục hồi nhanh

  • Tránh mất dữ liệu nghiệp vụ

  • Đáp ứng tuân thủ


 

Website có thể dựng lại,
nhưng dữ liệu người dùng nếu mất là mất vĩnh viễn.

Backup website và ứng dụng web phải:

  • Gắn với logic nghiệp vụ

  • Đảm bảo nhất quán

  • Được kiểm tra định kỳ