Sao lưu website trước khi sửa: quy tắc Halo áp cho mọi web khách
Quy tắc sao lưu của Halo: kiểm kê mọi website, cơ sở dữ liệu trên hosting, lưu bản sao ngoài máy chủ, đối chiếu md5 và thử khôi phục trước khi sửa.
Một bản sao lưu chỉ có ý nghĩa khi dùng được lúc bản gốc gặp vấn đề. Vì vậy, trước khi sửa website khách, Halo không chỉ hỏi đã tải dữ liệu chưa. Chúng tôi kiểm tài khoản hosting thực sự chứa những gì, bản sao có đủ hay không, đã nằm ở kho lưu trữ ngoài chưa và có thể khôi phục bằng cách nào. Đây là điều kiện trước lần ghi đầu tiên lên website đang chạy.
Tóm tắt nhanh
- Sao lưu trước khi sửa phải bao gồm mọi website và cơ sở dữ liệu của tài khoản hosting, không chỉ tên miền khách nhắc tới.
- Không xuất bản sao lưu vào chính hosting khách; kéo dữ liệu ra máy hoặc máy chủ trung chuyển rồi đưa lên Google Drive.
- Đối chiếu số tệp, dung lượng và md5, đồng thời so nội dung gói với nguồn và thử nạp cơ sở dữ liệu.
- Ghi vị trí lưu, phạm vi dữ liệu và từng bước khôi phục trong hồ sơ dự án để người sau có thể làm lại.
Quy tắc trước lần sửa đầu tiên
Quy định Halo chốt ngày 07/10/2026 nêu rõ: chưa có bản sao lưu đầy đủ trên Google Drive và chưa đối chiếu thì chưa được ghi bất cứ thứ gì lên website khách. Điều này áp dụng cho sửa nội dung kỹ thuật, nâng cấp, chuyển host, dọn mã độc, đổi PHP, gỡ plugin và xoá tệp. Khảo sát chỉ đọc thì không cần bước này.
Mục đích là giữ dữ liệu để có thể khôi phục khi sửa sai hoặc xoá nhầm. Bản sao lưu phải có trước thao tác, không phải được tạo sau khi phát hiện lỗi. Đến lúc cần phục hồi, phần chưa từng được sao lưu sẽ không xuất hiện chỉ vì tên gói có chữ “đầy đủ”.
Đếm từ hosting, không đếm từ danh sách nhớ được
Hosting là tài khoản lưu trữ website, có thể chứa nhiều tên miền và cơ sở dữ liệu. Trong một bài học được ghi lại ngày 29/09/2026, bản được gọi là sao lưu đầy đủ chỉ chứa 4 trong 7 website. Phép đối chiếu vẫn báo không thiếu tệp vì nó chỉ kiểm trong phạm vi 4 website đã chọn.
Phép đo đó không phát hiện được ba website bị bỏ ngoài danh sách. Do vậy, Halo yêu cầu kiểm kê từ phía nguồn trước khi tải: có bao nhiêu tên miền, tài khoản chứa bao nhiêu dữ liệu và danh sách cơ sở dữ liệu thực tế là gì. Lời khách cung cấp giúp định hướng, nhưng không thay thế việc kiểm tài khoản hosting.
Trong một website khách khác, tài khoản còn có tên miền bổ sung mà khách không nhắc tới. Nếu chỉ kéo thư mục của website đang sửa, bản sao sẽ thiếu phần còn lại. Khi phát hiện thêm website, cần báo ngay và đưa vào công việc sao lưu, thay vì bỏ qua vì không nằm trong yêu cầu ban đầu.
Không chỉ thư mục chứa trang web
Bản sao cần đủ tệp web, kể cả tệp ẩn như .htaccess và tệp cấu hình wp-config.php. Với cơ sở dữ liệu, phải lấy danh sách từ bảng quản trị hosting thay vì đoán chỉ từ cấu hình một website. Tài liệu cũng ghi nhận trường hợp website dùng cơ sở dữ liệu đặt ở tài khoản khác.
Ngoài thư mục web, cần rà hộp thư nếu khách dùng email trên hosting, tác vụ định kỳ và bản ghi DNS của tên miền. DNS là cấu hình giúp tên miền trỏ tới dịch vụ tương ứng. Các tệp nằm ngoài thư mục web cũng cần được kiểm kê để biết có dữ liệu liên quan nào đang bị bỏ sót.
Vì sao không để bản sao lưu trên chính hosting?
Một gói sao lưu website có thể chứa mã nguồn, dữ liệu và thông tin kết nối. Nếu plugin xuất gói vào thư mục web mà máy chủ cho phép tải công khai, người không đăng nhập cũng có thể lấy được. Quy trình Halo ghi nhận một bản .wpress của một website khách từng nằm công khai trên hosting trong nhiều tháng.
Vì vậy, quy tắc là không xuất gói sao lưu ra chính hosting khách. Dữ liệu được kéo ra máy hoặc máy chủ trung chuyển rồi đưa lên kho lưu trữ ngoài. Không nên coi một tệp nằm trong thư mục web là an toàn chỉ vì khách bình thường không thấy đường dẫn đó trên menu.
Tạo tệp nén ngay trong File Manager cũng có rủi ro dung lượng. File Manager là công cụ quản lý tệp của hosting; khi nén, cần thêm chỗ trống để chứa gói mới. Tài liệu cảnh báo ổ đầy có thể làm gián đoạn website, cơ sở dữ liệu và email. Nén nặng trên hosting yếu cũng có thể làm website chậm trong lúc thực hiện.
Bản sao từ dịch vụ sao lưu của nhà cung cấp có thể dùng làm lớp bổ sung. Tuy nhiên, nó không thay bản Halo lưu riêng: nếu tài khoản hosting bị xoá, bản nằm cùng nhà cung cấp có thể mất theo. Hồ sơ dự án cần chỉ ra một bản ngoài hosting đã được đối chiếu.
Kéo dữ liệu theo quyền truy cập đang có
Nếu có SSH, tức quyền kết nối dòng lệnh tới máy chủ, đội kỹ thuật có thể truyền dữ liệu ra ngoài mà không tạo gói trung gian trên hosting. Nếu chỉ có cPanel, tệp được tải qua FTP, còn cơ sở dữ liệu lấy qua chức năng sao lưu hoặc công cụ quản trị dữ liệu. Cách làm phụ thuộc quyền thực tế được cấp.
Việc truyền tải cũng cần phù hợp giới hạn kết nối. Tài liệu ghi nhận trường hợp chạy nhiều luồng và thử đăng nhập sai cách khiến IP bị tường lửa chặn. Vì vậy, sao lưu không chỉ là bấm tải; đội thực hiện phải kiểm soát số kết nối và xử lý lỗi thay vì lặp lại thao tác dồn dập.
Đối chiếu md5 là cần, nhưng chưa đủ
md5 là mã kiểm tra dùng để so nội dung tệp giữa các bản. Sau khi đưa gói lên Google Drive, mã này giúp xác nhận bản đã tải lên khớp với gói dùng để đối chiếu. Tuy nhiên, nếu gói đã hỏng trước lúc tính mã, hai bản hỏng giống nhau vẫn cho kết quả khớp.
Bài học ngày 08/10/2026 ghi nhận việc xử lý metadata, tức thông tin phụ của tệp từ macOS, đã làm hỏng nội dung trong một gói sao lưu. Các bước sau vẫn có md5 khớp vì mã được tính sau khi dữ liệu bị hỏng. Đây là lý do không thể chỉ nhìn mã của cả gói rồi kết luận đủ và đúng.
Phép đối chiếu cuối cùng còn phải đọc danh sách nội dung gói trên Drive, so đường dẫn và dung lượng từng tệp với danh sách nguồn. Quy trình cũng yêu cầu đối chiếu số tệp và dung lượng bản đã kéo, đếm riêng ảnh để phát hiện phần hình ảnh bị thiếu. Nguồn thật phải là mốc so sánh.
Cơ sở dữ liệu phải được kiểm bằng nội dung
Một tệp xuất cơ sở dữ liệu có đuôi đúng vẫn có thể thiếu dữ liệu bên trong. Vì vậy, cần kiểm gói nén có đọc được, có đủ cấu trúc bảng và có phần dữ liệu hay không. Không thể dùng riêng kích thước tệp làm bằng chứng rằng việc xuất đã thành công.
Quy trình còn kiểm dấu kết thúc của bản xuất và yêu cầu nạp thử vào staging. Staging là môi trường thử để kiểm trước khi áp dụng lên website thật. Việc nạp được cơ sở dữ liệu và chạy thử là phép kiểm khả năng khôi phục, bổ sung cho đối chiếu tệp và mã toàn vẹn.
Cách khôi phục phải nằm trong hồ sơ dự án
Người cần phục hồi dữ liệu có thể không phải người đã tạo gói. Vì vậy, hồ sơ phải ghi đường dẫn Google Drive, danh sách website và cơ sở dữ liệu, số tệp, dung lượng, md5 và lệnh khôi phục từng bước. Tài liệu được đặt trong phần triển khai của dự án, có con trỏ từ hướng dẫn dự án để tìm lại.
Trình tự phục hồi phải gắn với đúng bộ tệp và cơ sở dữ liệu đã kiểm kê. Khi thử trên staging, đội thực hiện dùng chính dữ liệu sao lưu để kiểm khả năng dựng lại. Nếu thử nạp thất bại, cần sửa hoặc lấy lại bản sao trước khi tiếp tục công việc trên website khách.
Bản trên Drive phải để riêng tư vì tệp cấu hình có thể chứa mật khẩu cơ sở dữ liệu. Quy trình yêu cầu giữ bản sao hết thời gian bảo hành đã cam kết. Ghi vị trí và cách khôi phục không đồng nghĩa với chia sẻ công khai gói chứa dữ liệu của khách.
Những mốc sao lưu và lỗi cần tránh
- Trước lần ghi đầu tiên: tạo và đối chiếu bản toàn bộ tài khoản hosting.
- Trước bước rủi ro: sao lưu ít nhất cơ sở dữ liệu và thư mục sắp tác động, chẳng hạn trước thay dữ liệu hàng loạt hoặc đổi PHP.
- Sau khi đưa lên chạy thật và nghiệm thu: tạo bản toàn bộ làm mốc bàn giao.
Các lỗi dễ lặp gồm bỏ sót website ngoài danh sách, quên tệp ẩn, chỉ nhìn kích thước bản xuất cơ sở dữ liệu, để gói sao lưu trong thư mục web và so hai bản sao với nhau mà không quay lại nguồn. Một lỗi khác là bỏ qua thông báo xuất dữ liệu thất bại, khiến lịch sao lưu vẫn chạy nhưng không tạo được dữ liệu dùng để phục hồi.
Trước khi ghi “đã sao lưu xong”, người thực hiện phải trả lời được: nếu bản gốc mất ngay lúc này, bộ dữ liệu hiện có dựng lại được những gì? Câu trả lời cần dựa trên danh sách nguồn, kết quả đối chiếu và lần thử khôi phục, không dựa vào tên gói hay thông báo tải lên thành công.
Nguồn
- sao-luu-truoc-khi-sua-web.md, tiêu chuẩn nội bộ Halo Media, chốt ngày 07/10/2026, bổ sung bài học ngày 08/10/2026.
- backup-chuan-du-100.md, tiêu chuẩn sao lưu nội bộ Halo Media, quy tắc chốt ngày 29/09/2026.
- CLAUDE.md, mục Sửa web khách, sao lưu đủ lên Google Drive trước, quy ước nội bộ Halo Media; mục không ghi ngày ban hành riêng.