Di chuyển website WordPress từ server này sang server khác là một nhiệm vụ kỹ thuật phức tạp và tiềm ẩn nhiều rủi ro. Các lỗi wordpress server migration có thể xảy ra bất cứ lúc nào, từ lỗi kết nối database, đường dẫn hỏng, cho đến mất dữ liệu hoàn toàn. Hiểu rõ bản chất của từng loại lỗi và có chiến lược xử lý bài bản là yếu tố sống còn để bảo vệ website và trải nghiệm người dùng. Bài viết này cung cấp kiến thức chuyên sâu về các lỗi thường gặp trong quá trình migration WordPress, kèm hướng dẫn khắc phục chi tiết và các biện pháp phòng ngừa hiệu quả.
WordPress Server Migration Lỗi Là Gì?

Về bản chất, WordPress server migration là quá trình sao chép toàn bộ file, cơ sở dữ liệu và cấu hình từ môi trường hosting cũ sang môi trường hosting mới. Khi quá trình này không hoàn thành trơn tru, các lỗi phát sinh được gọi chung là wordpress server migration lỗi. Những lỗi này có thể biểu hiện dưới nhiều dạng khác nhau: màn hình trắng chết chóc, lỗi 500 internal server error, lỗi kết nối database, hoặc website hiển thị sai đường dẫn ảnh, link hỏng.
Sự phức tạp của migration đến từ việc WordPress sử dụng cả file hệ thống lẫn database. Mỗi plugin, theme, hoặc cấu hình server đều có thể là nguyên nhân gây ra xung đột. Những lỗi này thường xuất hiện do sự khác biệt về phiên bản PHP, cấu hình MySQL, quyền truy cập file, hoặc do plugin cache và security ghi đè cấu trúc database.
Phân Loại Các Lỗi WordPress Server Migration Phổ Biến
Lỗi Kết Nối Database (Error Establishing a Database Connection)
Đây là lỗi thường gặp nhất sau khi migration. Nguyên nhân do thông tin kết nối database trong file wp-config.php không khớp với server mới. Cụ thể, tên database, username, password, hoặc hostname (thường là localhost) bị sai. Ngoài ra, nếu database chưa được import đúng cách hoặc server mới chưa tạo database, lỗi này cũng sẽ xuất hiện.
Lỗi Màn Hình Trắng (White Screen of Death)
Khi website chỉ hiển thị một trang trắng hoàn toàn, không có thông báo lỗi, đó là dấu hiệu của lỗi nghiêm trọng trong PHP. Nguyên nhân có thể do plugin hoặc theme không tương thích với phiên bản PHP trên server mới, hoặc do lỗi cú pháp trong file function.php. Lỗi này thường khó debug vì không hiển thị message cụ thể.
Lỗi 500 Internal Server Error
Lỗi 500 là phản hồi chung từ server, cho thấy có vấn đề về cấu hình server hoặc file.htaccess. Khi migration, file.htaccess có thể không được copy hoặc nội dung bên trong không phù hợp với môi trường mới. Plugin bảo mật hoặc rewrite rules cũng có thể gây ra lỗi này.
Lỗi URL và Đường Dẫn Hỏng
WordPress lưu URL gốc trong database (siteurl, home). Khi di chuyển sang server mới với domain hoặc đường dẫn khác, nếu không cập nhật URL, tất cả link ảnh, file, và internal link sẽ trỏ về địa chỉ cũ, gây ra lỗi 404 hoặc hiển thị sai.
Lỗi Permalink và 404 Trang
Sau migration, cấu trúc permalink thường không hoạt động ngay lập tức. Server mới cần kích hoạt mod_rewrite (Apache) hoặc cấu hình tương tự (Nginx). Nếu không, tất cả các bài viết, trang sẽ báo lỗi 404.
Quy Trình Migration WordPress An Toàn – Tránh Lỗi Từ Đầu

Để giảm thiểu wordpress server migration lỗi, cần tuân thủ quy trình chuẩn hóa. Mỗi bước đều có những điểm cần kiểm tra kỹ lưỡng.
Bước 1: Sao Lưu Toàn Bộ Dữ Liệu
Sử dụng plugin chuyên dụng (UpdraftPlus, Duplicator, All-in-One WP Migration) hoặc thực hiện thủ công qua FTP và phpMyAdmin. Đảm bảo backup đầy đủ cả file (thư mục wp-content, wp-config.php,.htaccess) và database (export file.sql). Kiểm tra dung lượng backup có khớp với dung lượng thực tế không.
Bước 2: Chuẩn Bị Server Mới
Kiểm tra phiên bản PHP, MySQL, và các extension cần thiết (mysqli, gd, curl, mbstring). Tạo database mới và user mới với toàn quyền. Lưu lại thông tin kết nối. Cài đặt SSL nếu cần.
Bước 3: Upload File Lên Server Mới
Sử dụng FTP hoặc File Manager của hosting để upload toàn bộ thư mục WordPress lên server mới. Đảm bảo quyền truy cập file (permission) đúng: thư mục 755, file 644, và wp-config.php được bảo vệ.
Bước 4: Import Database
Vào phpMyAdmin của server mới, chọn database vừa tạo, import file.sql. Nếu file quá lớn, chia nhỏ hoặc sử dụng công cụ BigDump. Nếu gặp lỗi timeout, tăng giá trị max_execution_time trong php.ini.
Bước 5: Cập Nhật wp-config.php và URL
Sửa thông tin database trong wp-config.php. Sau đó, nếu domain thay đổi, cần thay đổi siteurl và home trong database trực tiếp bằng SQL query: UPDATE wp_options SET option_value = ‘https://domainmoi.com’ WHERE option_name IN (‘siteurl’, ‘home’);
Bước 6: Kiểm Tra Lại Toàn Bộ
Truy cập website, kiểm tra trang chủ, bài viết, ảnh, và chức năng admin. Flush permalink bằng cách vào Settings > Permalinks và nhấn Save Changes. Xóa cache nếu có.
Những Sai Lầm Thường Gặp Khiến WordPress Server Migration Lỗi
- Không cập nhật URL trong database thủ công: Nhiều người chỉ copy file và database, quên thay đổi siteurl. Plugin search and replace có thể giúp, nhưng nếu không dùng plugin, hỏng toàn bộ link.
- Bỏ qua kiểm tra.htaccess: File này chứa các luật rewrite và cấu hình bảo mật. Nếu server mới không hỗ trợ mod_rewrite hoặc file bị lỗi, website sẽ báo 500.
- Dùng plugin migration không phù hợp với dung lượng lớn: Plugin All-in-One WP Migration có giới hạn 512MB bản free. Vượt quá sẽ báo lỗi hoặc không export được.
- Không kiểm tra quyền file (permission): Thư mục wp-content và các thư mục con cần quyền ghi để upload ảnh, cài plugin. Nếu permission sai, xuất hiện lỗi “Unable to create directory”.
- Migrate khi đang có plugin bảo mật hoặc cache đang hoạt động: Các plugin như Wordfence, W3 Total Cache, WP Super Cache có thể gây xung đột nặng nề sau migration do cache cũ và rules bảo mật không tương thích.
- Luôn kiểm tra môi trường server mới trước: Xem có đúng phiên bản PHP (khuyến nghị 7.4 hoặc 8.0+), có hỗ trợ SSL, có giới hạn upload file không.
- Tắt toàn bộ plugin và theme tạm thời: Chỉ giữ lại plugin core cần thiết (nếu có) để tránh xung đột khi migration.
- Sử dụng staging site để test: Hãy migration sang một subdomain hoặc thư mục tạm trước khi chuyển hẳn sang domain chính. Điều này giúp phát hiện lỗi sớm.
- Không xóa website cũ cho đến khi website mới hoạt động ổn định: Giữ lại để rollback nếu cần.
- Kiểm tra toàn bộ chức năng sau migration: Đăng ký tài khoản, gửi form, thanh toán, gửi email. Các hàm mail PHP có thể không hoạt động trên server mới.
- Cập nhật DNS sau cùng: Nếu đổi tên miền, hãy đợi DNS propagation hoàn tất (24-48h) rồi mới tắt website cũ.
Hướng Dẫn Khắc Phục Các Lỗi WordPress Server Migration Chi Tiết

Khắc Phục Lỗi Kết Nối Database
Kiểm tra lại file wp-config.php. Mở file bằng text editor, xác nhận đúng DB_NAME, DB_USER, DB_PASSWORD, DB_HOST. Nếu server mới dùng host khác localhost (ví dụ: 127.0.0.1 hoặc tên socket), chỉnh sửa cho phù hợp. Vào phpMyAdmin kiểm tra database đã tồn tại và user có quyền truy cập chưa. Thử tạo user mới với toàn quyền và cập nhật lại wp-config.
Xử Lý Màn Hình Trắng (White Screen of Death)
Kích hoạt WP_DEBUG trong wp-config.php: thêm dòng define(‘WP_DEBUG’, true);. Truy cập lại website, nếu hiển thị lỗi cụ thể, sửa theme hoặc plugin gây lỗi. Nếu không truy cập được, đổi tên thư mục plugins trong FTP thành plugins_old để tắt toàn bộ plugin. Nếu website hồi phục, tìm plugin lỗi và cập nhật. Tương tự với theme.
Sửa Lỗi 500 Internal Server Error
Kiểm tra file.htaccess trong thư mục gốc. Đổi tên thành.htaccess_old và truy cập lại. Nếu hết lỗi, tạo file.htaccess mới từ WordPress (Settings > Permalinks > Save Changes). Nếu lỗi vẫn còn, tăng memory limit PHP hoặc kiểm tra log lỗi server. Liên hệ với nhà cung cấp hosting để xem lỗi cụ thể.
Khắc Phục Lỗi URL Hỏng
Sử dụng plugin Better Search Replace để thay thế URL cũ bằng URL mới trong toàn bộ database. Chạy query sau trong phpMyAdmin: UPDATE wp_posts SET post_content = REPLACE(post_content, ‘cu’, ‘moi’);. Đừng quên cập nhật các bảng wp_postmeta và wp_options. Kiểm tra lại ảnh, file tải lên.
Khôi Phục Permalink và Xóa Lỗi 404
Đăng nhập vào admin, vào Settings > Permalinks, chọn lại cấu trúc mong muốn, nhấn Save Changes. Nếu server dùng Nginx, cần thêm rules rewrite vào file cấu hình Nginx. Nếu vẫn còn lỗi, kiểm tra file.htaccess đã tồn tại và có nội dung chuẩn chưa.
So Sánh Các Phương Pháp Migration WordPress
| Phương pháp | Ưu điểm | Nhược điểm | Rủi ro lỗi |
|---|---|---|---|
| Plugin Migration (Duplicator, All-in-One) | Dễ dùng, tự động hóa, có search and replace | Giới hạn dung lượng, phụ thuộc vào plugin, có thể lỗi với hosting lạ | Trung bình |
| Thủ công qua FTP + phpMyAdmin | Kiểm soát hoàn toàn, không giới hạn dung lượng | Phức tạp, dễ sai sót thao tác, cần kiến thức kỹ thuật | Cao nếu không cẩn thận |
| Dịch vụ Migration chuyên nghiệp | Đảm bảo độ chính xác cao, hỗ trợ kỹ thuật | Chi phí cao, phải chia sẻ quyền truy cập | Thấp |
| Command Line (WP-CLI) | Nhanh, tự động hóa được, ít lỗi database | Yêu cầu quyền SSH và kiến thức CLI | Thấp nếu dùng đúng lệnh |
Việc lựa chọn phương pháp phù hợp phụ thuộc vào quy mô website, kỹ năng kỹ thuật của bạn và mức độ chấp nhận rủi ro. Với các website lớn (hàng GB), phương pháp thủ công hoặc WP-CLI thường an toàn hơn.
Lưu Ý Quan Trọng Khi Thực Hiện Migration

Phân Tích Lỗi Theo Từng Trường Hợp Cụ Thể
Một số lỗi wordpress server migration chỉ xảy ra trong điều kiện đặc thù. Ví dụ, khi chuyển từ shared hosting lên VPS, cấu hình PHP-FPM và Nginx có thể gây lỗi 502 Bad Gateway nếu không cấu đúng. Khi chuyển từ Apache sang Nginx, file.htaccess không hoạt động, phải chuyển các luật rewrite sang Nginx config. Khi chuyển giữa các nhà cung cấp hosting khác nhau (Ví dụ từ Hostinger sang Cloudways), các giá trị DB_HOST có thể khác (localhost vs 127.0.0.1 vs tên socket).
Lỗi cũng có thể liên quan đến mã hóa database. Nếu database cũ dùng Latin1 và server mới dùng UTF8, dữ liệu tiếng Việt sẽ bị lỗi font. Khi đó, cần export database với mã hóa UTF8 và import lại với đúng collation.
Câu Hỏi Thường Gặp Về WordPress Server Migration Lỗi
Tại sao sau migration website vẫn hiển thị nội dung cũ dù đã đổi domain?
Do DNS propagation chưa hoàn tất hoặc trình duyệt cache. Xóa cache trình duyệt, xóa DNS cache trên máy. Nếu vẫn, kiểm tra file hosts trên máy tính để trỏ domain cũ sang IP server mới tạm thời.
Lỗi “The uploaded file exceeds the upload_max_filesize” khi import database qua plugin?
Plugin có giới hạn dung lượng import. Tăng giá trị upload_max_filesize và post_max_size trong php.ini server mới, hoặc import bằng phpMyAdmin thủ công. Nếu file.sql lớn hơn 50MB, nên chia nhỏ hoặc dùng command line.
Làm sao để biết lỗi do plugin hay theme?
Đổi tên thư mục plugins thành plugins_old. Nếu website hoạt động, lỗi do plugin. Nếu vẫn lỗi, đổi tên thư mục theme (trong wp-content/themes) thành tên khác, WordPress sẽ fallback về theme mặc định. Xác định được thành phần gây lỗi.
Migration xong nhưng không đăng nhập được vào admin?
Lỗi này thường do cookie path hoặc URL trong database chưa cập nhật. Kiểm tra siteurl và home trong wp_options. Nếu đúng, xóa cache plugin và thử đăng nhập bằng cách thêm /wp-login.php. Nếu vẫn lỗi, thay đổi mật khẩu admin trực tiếp trong database.
Có cần thay đổi gì trong wp-config nếu chuyển từ HTTP sang HTTPS?
Có. Thêm dòng define(‘FORCE_SSL_ADMIN’, true); nếu muốn admin bắt buộc HTTPS. Cập nhật siteurl và home thành https://. Nếu có asset gọi từ http://, dùng plugin search and replace để đổi toàn bộ.
Kết Luận
WordPress server migration lỗi là điều khó tránh khỏi, nhưng với kiến thức vững vàng và quy trình chuẩn, bạn hoàn toàn có thể khắc phục và phòng ngừa. Hãy luôn bắt đầu bằng backup đầy đủ, kiểm tra kỹ môi trường server mới, và thử nghiệm trên staging trước. Mỗi lỗi đều có nguyên nhân cụ thể, từ database, file hệ thống, đến cấu hình server. Việc ghi nhớ các bước khắc phục và áp dụng đúng lúc sẽ giúp bạn tiết kiệm thời gian và giữ website hoạt động ổn định.
Đừng quên duy trì thói quen kiểm tra định kỳ sau migration, đặc biệt là các chức năng gửi email, đăng ký người dùng, và cache. Nếu gặp lỗi quá phức tạp, hãy nhờ đến dịch vụ hỗ trợ kỹ thuật chuyên nghiệp. Việc nắm vững cách xử lý wordpress server migration lỗi sẽ giúp bạn tự tin hơn trong mọi lần di chuyển website.
- Lỗi Kích Hoạt Theme WordPress: Nguyên Nhân, Cách Khắc Phục Toàn Diện
- WooCommerce vs Haravan: So sánh chi tiết nền tảng bán hàng online nào phù hợp với bạn?
- WordPress Bottleneck Là Gì? Nguyên Nhân Và Cách Khắc Phục Triệt Để Hiệu Suất Website
- Thanh toán WooCommerce là gì? Hướng dẫn toàn diện từ A-Z cho người mới bắt đầu
- Plugin WordPress Gây Lỗi Admin: Nguyên Nhân, Dấu Hiệu Và Cách Khắc Phục Toàn Diện














