Phương pháp cứu cánh website khi không chuyển được host.
Bạn xây dựng một website dựa trên nền tảng WordPress, cài đặt đầy đủ mọi thứ và yên tâm xây dựng website đó… Cho đến một ngày, bạn muốn chuyển nó qua hosting khác tốt hơn thì không thể chuyển được. Những tập tin backup không hoạt động trên host mới và còn nhiều lý do nữa… nên dù thử nhiều cách khác nhau nhưng bạn vẫn không thể di chuyển website một cách hoàn hảo? Hôm nay tôi sẽ giới thiệu tới các bạn 2 thủ thuật nhỏ, có thể coi như những nước cờ cuối cùng mà bạn nên nghĩ đến khi không còn giải pháp nào khả thi hơn. Đây là cách mà tôi đã làm khi chuyển website lắp đặt truyền hình FPT về hosting Việt Nam.
Hiện tại, có rất nhiều plugin (kể cả miễn phí lẫn trả phí) có thể giúp bạn backup dữ liệu một cách toàn diện. Tuy nhiên trong thực tế sử dụng, đặc biệt là với các bản WordPress gần đây, việc backup đã trở nên khó khăn hơn, gặp nhiều lỗi hơn khi chuyển host hay domain cho website. Nhất là với những bạn dùng host yếu hoặc host miễn phí.
1. Sử dụng plugin Duplicator
Tình huống 1: Bạn đã sử dụng nhiều plugin khác nhau, tuy nhiên vẫn không thể backup được toàn bộ dữ liệu một cách hoàn hảo.
Tham khảo thêm: Top 10 Backup plugins tốt nhất dành cho blog WordPress
Cách xử lý: Sau khi dùng nhiều plugin backup khác nhau hoặc tải về toàn bộ mã nguồn theo cách thủ công nhưng vẫn hoàn toàn giải quyết được vấn đề, tôi đã quyết định sử dụng plugin để “clone” (nhân bản) website. Vâng, plugin mà tôi đang muốn nói ở đây chính là Duplicator, được biết đến như là một công cụ miễn phí tuyệt vời cho việc nhân bản website. Bạn chỉ cần cấu hình 1 lần duy nhất và sau đó sử dụng cho nhiều site khác nhau, tiết kiệm được nhiều thời gian thay vì phải cài đặt từ đầu. Với những website có nhiều bài viết, dung lượng lớn, Duplicator cũng làm việc hoàn toàn ổn định và cực kỳ hiệu quả. Thêm vào đó, tôi đánh giá rất cao khi Duplicator cho phép đóng gói toàn bộ website của bạn thành một file zip và bạn có thể tải về bằng IDM (phần mềm tăng tốc download). Sau khi tải được về thì bạn dễ dàng cài đặt được website lại mà giữ nguyên dữ liệu gốc.
2. Sử dụng công cụ Import/Export của WordPress
Tình huống 2: Không thể export được database từ phpMyAdmin hoặc database đã export không thể import được sang host mới do bị lỗi.
Cách xử lý: Nếu website bạn đang hoạt động bình thường, hãy thử dùng qua plugin Duplicator được nêu ở tình huống 1. Nhưng thường thì bạn sẽ không thể download được toàn bộ dữ liệu bằng Duplicator nếu website của bạn có dung lượng quá lớn (hosting sẽ bị timeout). Và sau khi dùng nhiều cách khác nhau mà không giải quyết được thì tính năng import/export được tích hợp sẵn trong WordPress là phương pháp rất hiệu quả trong tình huống này.
Việc đầu tiên bạn cần làm chính là đăng nhập vào WordPress Dashboard => Tools => Export.
Tại đây, bạn có các lựa chọn như sau:
- All content: export toàn bộ bài viết, trang, bình luận…
- Posts: Chỉ export các bài viết trên site của bạn.
- Pages: Chỉ export các page trên site của bạn.
Bạn có thể chọn tùy theo mục đích của mình, nhưng để dữ liệu được đầy đủ nhất, hãy chọn mặc định là “All content” để tải toàn bộ nội dung website. Click vào nút “Download Export File” để xuất dữ liệu dưới dạng file .xml và download nó về máy tính.
Sau khi có file dữ liệu của website cũ, bạn đã có thể yên tâm phần nào về dữ liệu của mình. Việc còn lại là nhập nôi dung đó vào website mới. Để làm được điều này, bạn cần cài mới hoàn toàn một website WordPress trên hosting mới. Tại bảng quản trị của website mới, chọn : Tools => Import => WordPress. Tiếp theo, click vào mục “WordPress“.
Website sẽ được cài một plugin có tên là WordPress Importer. Sau khi cài đặt và kích hoạt, hãy chọn và upload tập tin .xml mà bạn đã export ở bước trên.
Qua bước tiếp theo, bạn cần chọn tạo một tài khoản người dùng mới hoặc lựa chọn tác giả bài viết từ site cũ sẽ chuyển quyền cho tác giả nào ở site mới. Xong, bạn đã hoàn thành việc upload toàn bộ dữ liệu lên database mới.
Do bạn vừa import dữ liệu vào website mới nên cần: tùy chỉnh lại permalink cho phù hợp với link cũ mà bạn đã đặt để hạn chế tình trạng gãy link, chỉnh sửa lại theme bạn cài đặt… Với phương pháp này, bạn chỉ có thể lấy lại được các nội dung được lưu trữ trên database, còn toàn bộ các file dữ liệu (bộ cài WordPress, themes, plugins, hình ảnh,…) vẫn được lưu trên hosing cũ. Vì vậy, bạn cần download toàn bộ chúng và upload vào thư mục tương ứng trên hosting mới.
Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều.
Bạn ơi mình muốn viết 1 blog nhỏ nhỏ trên hosting miễn phí 000webhost để 1 phần là tập tành làm wordpress (vì mình là người mới), 1 phần cũng muốn xem bản thân có theo đuổi, có kiên nhẫn với cái nghề viết blog không trước khi đầu tư mua host trả phi. Mình muốn hỏi là mình dùng host miễn phí kia đến 1 lúc nào đó muốn đầu tư nghiêm túc thì chuyển hết dữ liệu của host miễn phí này sang host trả phí khác được không. 2 host khác nhau chứ không phải từ free lên predium. Cảm ơn bạn !
Chuyển được bạn nhé. Nhưng tốt nhất là bạn nên chuyển sớm trước khi có quá nhiều dữ liệu. Sẽ rất khó khăn để download dữ liệu từ host miễn phí nếu nó có dung lượng quá lớn (bị ngắt kết nối giữ chừng). :P
mình chỉ viết vài bài chủ yếu là xem cách thức làm việc cho quen với wordpress trước khi quyết định đầu tư thôi :D mình mới thử ở 000webhost thì không hiểu sao cứ tầm 11h là không vào được nữa phải sáng hôm sau mới vào lại web được. không biết tại sao. mình biết bạn không nghiên cứu về mấy cái host free này nhưng liệu bạn có biết host nào ok hơn không hay cái 000webhost này là ổn để test rồi :D
Host miễn phí nó có nhiều bất cập lắm. Bạn có thể thử OpenShift. Tuy nhiên, mình khuyên bạn nên đầu tư khoảng 30k/tháng để mua host trả phí thì sẽ tốt hơn. :P
Sử dụng plugin Duplicator mình có thể dùng để đổi tền miền sang tên miền mới và chuyển hướng truy cập từ tên miền cũ sang mới đc không vậy Hiếu?
Nó chỉ hỗ trợ đổi tên miền trong database thôi. Còn cái vụ redirect thì bạn phải cấu hình bằng file .htaccess. :P Cách làm cụ thể thì tham khảo bước 5 và 6 của bài viết “Làm gì khi bị Google AdSense ban domain?“. :)