Tổng Hợp Các Lỗi WordPress Thường Gặp Và Cách Khắc Phục

Tổng hợp các lỗi Wordpress - S'Pencil Agency

Sở hữu một website WordPress đồng nghĩa với việc bạn nắm trong tay một công cụ mạnh mẽ để phát triển thương hiệu và kinh doanh. Tuy nhiên, trong quá trình vận hành, việc đối mặt với các lỗi kỹ thuật là điều khó tránh khỏi. Những sự cố này, từ màn hình trắng xóa đến các mã lỗi khó hiểu, không chỉ gây gián đoạn trải nghiệm người dùng mà còn có thể ảnh hưởng nghiêm trọng đến thứ hạng SEO mà bạn đã dày công xây dựng.

Việc hiểu rõ bản chất của từng lỗi và trang bị kiến thức để xử lý chúng một cách có hệ thống không chỉ là kỹ năng sửa chữa, mà còn là một phần cốt lõi của chiến lược tối ưu website dài hạn. Một website khỏe mạnh về mặt kỹ thuật là nền tảng vững chắc cho mọi hoạt động marketing và bán hàng. Bài viết này, S’Pencil Agency sẽ phân tích chi tiết 12 lỗi WordPress thường gặp nhất, cung cấp những luận điểm rõ ràng về nguyên nhân và hướng dẫn cách tối ưu hoá website của bạn bằng các giải pháp khắc phục triệt để.

1. Lỗi màn hình trắng chết chóc (WSoD)

Có lẽ không có lỗi nào gây hoang mang hơn Lỗi Màn hình trắng chết chóc (White Screen of Death – WSoD). Bạn truy cập trang web của mình và tất cả những gì nhận được là một màu trắng vô hồn, không một thông báo, không một lời chỉ dẫn. Đây là lúc nhiều quản trị viên cảm thấy bất lực. Tuy nhiên, đằng sau sự im lặng đáng sợ đó là những nguyên nhân có thể chẩn đoán và khắc phục một cách có hệ thống.

Lỗi màn hình trắng chết chóc - S'Pencil Agency

Lỗi màn hình trắng chết chóc (WSoD)

Nguyên nhân phổ biến nhất dẫn đến WSoD là xung đột mã nguồn giữa các plugin hoặc theme. Hãy tưởng tượng mỗi plugin là một ứng dụng nhỏ chạy trên nền WordPress. Khi hai plugin (hoặc một plugin và theme) cố gắng sử dụng cùng một tài nguyên hoặc định nghĩa cùng một hàm theo hai cách khác nhau, một lỗi PHP nghiêm trọng (Fatal Error) sẽ xảy ra. Lỗi này khiến cho quá trình xử lý và hiển thị trang web bị dừng lại đột ngột, và kết quả cuối cùng là một trang trắng. Một nguyên nhân khác là do cạn kiệt bộ nhớ PHP, khi một tác vụ phức tạp đòi hỏi nhiều tài nguyên hơn mức cho phép của máy chủ.

Cách khắc phục chi tiết:

  1. Loại trừ nguyên nhân từ Plugin: Đây là bước chẩn đoán đầu tiên. Truy cập vào hosting của bạn qua FTP hoặc File Manager, đi đến thư mục wp-content và đổi tên thư mục plugins thành một tên bất kỳ (ví dụ: plugins_disabled). Thao tác này buộc WordPress phải vô hiệu hóa toàn bộ plugin. Bây giờ hãy tải lại trang web. Nếu trang hoạt động, bạn đã chứng minh được nguyên nhân đến từ plugin. Hãy đổi tên thư mục về lại như cũ, vào trang quản trị và kích hoạt lại từng plugin một để tìm ra “thủ phạm”.
  2. Tăng giới hạn bộ nhớ PHP: Nếu vô hiệu hóa plugin không hiệu quả, hãy thử tăng bộ nhớ. Mở file wp-config.php trong thư mục gốc của WordPress, thêm dòng mã sau vào trước dòng /* That’s all, stop editing! */: define(‘WP_MEMORY_LIMIT’, ‘256M’);. Thao tác này cấp thêm tài nguyên cho WordPress để xử lý các tác vụ nặng.

2. Lỗi WordPress Internal Server Error

Lỗi “Internal Server Error” (Lỗi máy chủ nội bộ) hay lỗi 500 là một thông báo chung chung, cho biết rằng có một sự cố đã xảy ra trên máy chủ nhưng máy chủ không thể chỉ ra chính xác vấn đề là gì. Sự mơ hồ này khiến việc khắc phục trở nên khó khăn hơn, nhưng hầu hết các trường hợp đều xuất phát từ chính website WordPress của bạn.

Thủ phạm hàng đầu gây ra lỗi này thường là file .htaccess bị hỏng hoặc cấu hình sai. File này chứa các quy tắc chỉ dẫn cho máy chủ về cách hoạt động, bao gồm cả việc xử lý đường dẫn tĩnh (permalink). Một quy tắc sai lệch từ một plugin hoặc một thao tác chỉnh sửa không đúng có thể làm hỏng file này, khiến máy chủ không thể diễn giải yêu cầu và trả về lỗi 500. Các nguyên nhân khác cũng tương tự như WSoD, bao gồm xung đột plugin/theme và cạn kiệt bộ nhớ PHP.

Cách khắc phục chi tiết:

  1. Tái tạo file .htaccess: Truy cập hosting, tìm file .htaccess trong thư mục gốc và đổi tên nó (ví dụ: .htaccess_backup). Sau đó, truy cập vào trang quản trị WordPress, đi đến Cài đặt > Đường dẫn tĩnh và chỉ cần nhấn nút Lưu thay đổi. WordPress sẽ tự động tạo ra một file .htaccess mới với các quy tắc chuẩn, thường sẽ khắc phục được lỗi ngay lập tức.
  2. Áp dụng các phương pháp khác: Nếu cách trên không thành công, hãy thực hiện quy trình chẩn đoán như với lỗi WSoD: tăng giới hạn bộ nhớ PHP và vô hiệu hóa lần lượt các plugin/theme để tìm kiếm xung đột.

3. Lỗi 403 Forbidden

Lỗi 403 Forbidden là một thông báo rõ ràng: bạn không có quyền truy cập vào trang hoặc tài nguyên này. Máy chủ đã nhận và hiểu yêu cầu của bạn, nhưng từ chối thực hiện nó.

Nguyên nhân gốc rễ của lỗi 403 nằm ở cơ chế phân quyền (permissions) của các file và thư mục trên máy chủ. Mỗi file và thư mục đều có một bộ quyền quy định ai có thể đọc, ghi và thực thi nó. Nếu các quyền này bị thiết lập sai, máy chủ sẽ chặn truy cập để bảo vệ an toàn cho website. Một plugin bảo mật được cấu hình quá nghiêm ngặt cũng có thể nhận diện nhầm hành động của bạn là đáng ngờ và chặn truy cập, gây ra lỗi 403.

Cách khắc phục chi tiết:

  1. Kiểm tra và sửa phân quyền file/thư mục: Sử dụng một trình quản lý file trên hosting hoặc FTP client, nhấp chuột phải vào các thư mục và chọn “File Permissions”. Đảm bảo rằng tất cả các thư mục được đặt quyền là 755 và tất cả các file được đặt quyền là 644. Đây là cấu hình quyền chuẩn và an toàn cho WordPress.
  2. Kiểm tra các plugin bảo mật: Tạm thời vô hiệu hóa các plugin bảo mật (như Wordfence, iThemes Security) bằng cách đổi tên thư mục của chúng trong wp-content/plugins. Nếu sau đó bạn truy cập được, hãy kích hoạt lại và kiểm tra phần cài đặt của plugin để tìm ra quy tắc nào đang gây ra xung đột.

4. Lỗi WordPress 404 Not Found

Đây là một trong những lỗi phổ biến nhất. Nó không có nghĩa là website của bạn bị sập, mà chỉ đơn giản là máy chủ không thể tìm thấy trang hoặc bài viết cụ thể mà người dùng yêu cầu.

Lỗi WordPress 404 Not Found - S'Pencil Agency

Lỗi WordPress 404 Not Found

Lỗi 404 thường xuyên xảy ra sau khi thay đổi cấu trúc đường dẫn tĩnh hoặc di chuyển website. Vấn đề cốt lõi nằm ở các quy tắc viết lại URL (URL rewrite rules) trong file .htaccess. Khi các quy tắc này không được cập nhật hoặc bị lỗi, WordPress sẽ không biết cách “dịch” một đường dẫn đẹp (ví dụ: yourdomain.com/bai-viet-moi) thành một truy vấn mà cơ sở dữ liệu có thể hiểu được, dẫn đến việc không tìm thấy nội dung.

Cách khắc phục chi tiết:

Làm mới đường dẫn tĩnh (Flush Permalinks): Đây là giải pháp đơn giản và hiệu quả nhất, là một bước không thể thiếu trong cách tối ưu trang web. Trong khu vực quản trị, đi đến Cài đặt > Đường dẫn tĩnh. Bạn không cần thay đổi bất cứ điều gì, chỉ cần nhấn nút Lưu thay đổi. Hành động này sẽ buộc WordPress phải làm mới và ghi lại các quy tắc URL vào file .htaccess, thường sẽ sửa được lỗi 404 ngay lập tức.

5. Lỗi 502 Bad Gateway

Lỗi 502 Bad Gateway là một lỗi phía máy chủ, cho biết máy chủ mà bạn đang kết nối (ví dụ: máy chủ hosting) đã nhận được một phản hồi không hợp lệ từ một máy chủ khác mà nó cần liên lạc (ví dụ: máy chủ CDN hoặc proxy). Vấn đề này thường không nằm ở website WordPress của bạn. Nguyên nhân có thể là do máy chủ hosting đang bị quá tải, đang bảo trì, hoặc có sự cố kết nối mạng giữa các máy chủ. Đôi khi, một tường lửa hoặc dịch vụ CDN (như Cloudflare) được cấu hình sai cũng có thể gây ra lỗi này.

Cách khắc phục chi tiết:

  1. Tải lại và xóa cache: Đôi khi lỗi chỉ là tạm thời. Hãy đợi vài phút, sau đó nhấn Ctrl + F5 để tải lại trang và xóa cache trình duyệt.
  2. Liên hệ nhà cung cấp hosting: Nếu vấn đề kéo dài, hãy liên hệ ngay với bộ phận hỗ trợ kỹ thuật của nhà cung cấp hosting hoặc CDN. Họ có công cụ để chẩn đoán và xác định chính xác sự cố đang xảy ra trên hệ thống của họ. Đây là bước tối ưu website quan trọng về mặt hạ tầng.

6. Không thể tải lên hình ảnh

Đây là một trong những lỗi gây khó chịu nhất trong quá trình biên tập nội dung. Bạn đã chuẩn bị một hình ảnh hoàn hảo cho bài viết, nhưng khi nhấn nút tải lên, WordPress lại trả về một thông báo lỗi chung chung như “HTTP error” hoặc đơn giản là quá trình tải không bao giờ hoàn thành.

Nguyên nhân gốc rễ của vấn đề này trong hầu hết các trường hợp là do sai quyền truy cập (file permissions) trên máy chủ. Để lưu một tệp tin mới, WordPress cần có “quyền ghi” (write permission) vào thư mục /wp-content/uploads. Nếu thư mục này được thiết lập ở chế độ chỉ đọc hoặc quyền ghi bị hạn chế, máy chủ sẽ từ chối yêu cầu tạo file mới của WordPress, dẫn đến lỗi tải lên. Đôi khi, tên file chứa ký tự đặc biệt hoặc dấu tiếng Việt cũng có thể gây ra xung đột với cách máy chủ xử lý tên tệp.

Cách khắc phục chi tiết:

  1. Kiểm tra và sửa quyền thư mục: Sử dụng một trình FTP (như FileZilla) hoặc File Manager trong cPanel của hosting. Điều hướng đến thư mục wp-content. Nhấp chuột phải vào thư mục uploads và chọn “File Permissions” (hoặc “Quyền truy cập”). Đảm bảo rằng giá trị số (Numeric value) được thiết lập là 755. Quyền này cho phép chủ sở hữu đọc, ghi, thực thi, và cho phép những người khác đọc và thực thi, đây là cấu hình chuẩn và an toàn.
  2. Kiểm tra tên file: Trước khi tải lên, hãy đảm bảo tên file của bạn không chứa các ký tự đặc biệt như !, @, #, &, hoặc các ký tự có dấu của tiếng Việt. Hãy đổi tên file thành dạng chữ không dấu, không khoảng trắng (ví dụ: hinh-anh-san-pham.jpg).
  3. Tối ưu hình ảnh: Đôi khi file ảnh quá lớn cũng có thể vượt quá giới hạn tải lên của máy chủ. Việc tối ưu website bằng cách nén ảnh trước khi tải lên không chỉ giúp giải quyết lỗi mà còn cải thiện tốc độ tải trang.

Khám phá ngay: Top 5 đơn vị thiết kế Website uy tín nhất Việt Nam

7. Không thể truy cập khu vực quản trị

Cảm giác hoảng sợ khi bạn gõ yourdomain.com/wp-admin và bị từ chối truy cập chính “ngôi nhà” của mình là một trải nghiệm không ai mong muốn. Lỗi này có thể biểu hiện dưới dạng trang đăng nhập tải lại liên tục hoặc một thông báo lỗi 403.

Không thể truy cập khu vực quản trị - S'Pencil Agency.png

Không thể truy cập khu vực quản trị

Vấn đề này có nhiều nguyên nhân tiềm tàng. Phổ biến nhất là một plugin bảo mật (security plugin) đã nhận diện sai lầm địa chỉ IP của bạn là một mối đe dọa và đã khóa nó. Một nguyên nhân khác là file .htaccess bị hỏng, chứa các quy tắc chuyển hướng hoặc chặn truy cập sai lệch. Ngoài ra, lỗi cookie và cache của trình duyệt cũng có thể gây ra xung đột trong quá trình xác thực phiên đăng nhập.

Cách khắc phục chi tiết:

  1. Đặt lại mật khẩu qua phpMyAdmin: Nếu bạn không thể đăng nhập do quên mật khẩu và chức năng “Quên mật khẩu” không hoạt động, hãy truy cập vào cPanel của hosting, tìm đến phpMyAdmin. Mở cơ sở dữ liệu của bạn, tìm bảng có hậu tố _users (ví dụ: wp_users). Tìm đến dòng chứa tên đăng nhập của bạn, nhấn “Edit”. Trong trường user_pass, nhập mật khẩu mới, và ở cột “Function”, hãy chọn MD5 từ danh sách thả xuống. Nhấn “Go” để lưu lại.
  2. Vô hiệu hóa plugin bảo mật: Truy cập hosting qua FTP, đi đến wp-content/plugins và đổi tên thư mục của plugin bảo mật bạn đang dùng (ví dụ: đổi wordfence thành wordfence_off). Thao tác này sẽ vô hiệu hóa nó và có thể cho phép bạn đăng nhập trở lại.
  3. Tạo lại file .htaccess: Như đã hướng dẫn ở các lỗi trước, việc đổi tên file .htaccess cũ và để WordPress tự tạo lại file mới thường giải quyết được các vấn đề liên quan đến chuyển hướng sai.

8. Lỗi bài đăng đã lên lịch không xuất bản

Bạn đã cẩn thận lên lịch cho một bài viết quan trọng sẽ xuất bản vào một thời điểm vàng, nhưng khi kiểm tra lại, bài viết vẫn nằm ở trạng thái “Lỡ lịch” (Missed Schedule).

Vấn đề này xuất phát từ cách hoạt động của WP-Cron, hệ thống xử lý các tác vụ theo lịch của WordPress. Không giống như một cron job thực thụ trên máy chủ luôn chạy theo thời gian cố định, WP-Cron là một “pseudo-cron” – nó chỉ được kích hoạt khi có ai đó truy cập vào trang web của bạn. Điều này có nghĩa là, nếu website của bạn có lưu lượng truy cập thấp và không có ai vào xem trang đúng vào thời điểm bài viết cần xuất bản, WP-Cron sẽ không chạy và tác vụ xuất bản sẽ bị bỏ lỡ.

Cách khắc phục chi tiết:

  1. Kiểm tra cài đặt múi giờ: Hãy chắc chắn rằng múi giờ trên website của bạn là chính xác. Vào Cài đặt > Tổng quan và chọn múi giờ phù hợp (ví dụ: UTC+7 cho Việt Nam).
  2. Sử dụng Plugin: Đây là giải pháp triệt để nhất. Cài đặt và kích hoạt plugin như Scheduled Post Trigger hoặc WP Missed Schedule. Các plugin này sẽ tự động chạy một tập lệnh nhỏ mỗi khi trang quản trị được tải, kiểm tra xem có bài viết nào bị lỡ lịch không và xuất bản chúng ngay lập tức. Đây là một cách tối ưu hoá website đơn giản nhưng cực kỳ hiệu quả cho việc quản lý nội dung.

9. Không gửi được email

Người dùng điền vào form liên hệ nhưng bạn không bao giờ nhận được email. Khách hàng đặt hàng trên WooCommerce nhưng không nhận được email xác nhận. Đây là một lỗi nghiêm trọng ảnh hưởng trực tiếp đến kinh doanh và uy tín.

Nguyên nhân cốt lõi là hầu hết các nhà cung cấp hosting chia sẻ (shared hosting) đều vô hiệu hóa hoặc hạn chế rất nhiều hàm mail() mặc định của PHP. Họ làm vậy để ngăn chặn máy chủ của mình bị lạm dụng để gửi thư rác (spam), điều có thể khiến địa chỉ IP của toàn bộ máy chủ bị đưa vào danh sách đen. Do đó, việc dựa vào hàm mail() mặc định của WordPress là rất không đáng tin cậy.

Cách khắc phục chi tiết:

  1. Sử dụng giao thức SMTP: Đây là giải pháp chuyên nghiệp và được khuyến nghị. SMTP (Simple Mail Transfer Protocol) là giao thức chuẩn để gửi email. Bạn cần cài đặt một plugin như WP Mail SMTP.
  2. Cấu hình Plugin: Sau khi cài đặt, plugin sẽ hướng dẫn bạn kết nối với một dịch vụ gửi email bên ngoài (Mailer). Bạn có thể sử dụng tài khoản Gmail miễn phí của mình (phù hợp cho các website nhỏ) hoặc các dịch vụ chuyên nghiệp như SendGrid, Brevo (trước đây là Sendinblue), Mailgun để đảm bảo email được gửi đi với tỷ lệ thành công cao nhất và không bị vào hòm thư rác.

10. Lỗi văn bản trắng trong trình soạn thảo

Bạn mở trình soạn thảo bài viết Classic Editor hoặc một block trong Gutenberg và chỉ thấy một khoảng trắng xóa, tất cả các nút định dạng (in đậm, in nghiêng, chèn link…) đều biến mất.

Đây là một lỗi điển hình của xung đột JavaScript (JS). Trình soạn thảo của WordPress (TinyMCE) là một ứng dụng JavaScript phức tạp. Một plugin hoặc theme được lập trình kém có thể tải một phiên bản thư viện JS khác hoặc chứa một đoạn mã lỗi, gây ra xung đột và làm “sập” trình soạn thảo. Cache của trình duyệt chứa các tệp JS cũ cũng có thể là nguyên nhân.

Cách khắc phục chi tiết:

  1. Xóa Cache trình duyệt: Nhấn Ctrl + Shift + R (hoặc Cmd + Shift + R trên Mac) để tải lại trang và xóa cache cứng.
  2. Chẩn đoán xung đột: Vô hiệu hóa tất cả các plugin. Nếu trình soạn thảo hoạt động trở lại, hãy kích hoạt từng cái một để tìm ra plugin gây lỗi. Thường thì các plugin thêm chức năng vào trình soạn thảo là thủ phạm chính.
  3. Thay thế file WordPress Core: Nếu các cách trên không hiệu quả, có thể file JS gốc của WordPress đã bị hỏng. Hãy tải bản WordPress mới nhất, giải nén và sử dụng FTP để tải lên và ghi đè toàn bộ thư mục /wp-includes/js/.

11. Warning: Cannot Modify Header Information

Lỗi này thường hiển thị dưới dạng một dòng cảnh báo khó hiểu ở đầu trang web của bạn: Warning: Cannot modify header information – headers already sent by…

Để hiểu lỗi này, bạn cần biết rằng một trang web hoạt động bằng cách máy chủ gửi “header” (chứa thông tin như cookie, chuyển hướng) trước, sau đó mới đến “body” (nội dung HTML). Lỗi này xảy ra khi có một thứ gì đó – dù chỉ là một khoảng trắng hoặc một ký tự – đã được gửi đến trình duyệt TRƯỚC khi các header được gửi đi. Nguyên nhân phổ biến nhất là do có khoảng trắng hoặc dòng trống ở trước thẻ <?php hoặc sau thẻ ?> trong các file cấu hình quan trọng như wp-config.php hoặc functions.php của theme.

Cách khắc phục chi tiết:

  1. Đọc kỹ thông báo lỗi: Thông báo lỗi sẽ chỉ rõ file và dòng gây ra vấn đề (ví dụ: …in /home/user/public_html/wp-config.php on line 1).
  2. Chỉnh sửa file: Mở file được chỉ định bằng trình chỉnh sửa code. Kiểm tra kỹ lưỡng và xóa bất kỳ khoảng trắng, dòng trống, hoặc ký tự nào nằm ngoài cặp thẻ <?php … ?>. Lưu file và tải lại trang web.

12. WordPress bị logout liên tục

Bạn đăng nhập thành công vào trang quản trị, nhưng chỉ sau vài phút hoặc vài cú nhấp chuột, hệ thống lại tự động đẩy bạn ra ngoài màn hình đăng nhập.

Vấn đề này gần như luôn luôn liên quan đến việc cài đặt URL không nhất quán. WordPress sử dụng cookie để duy trì phiên đăng nhập của bạn, và cookie này được gắn với một địa chỉ URL cụ thể. Nếu “Địa chỉ WordPress (URL)” và “Địa chỉ trang web (URL)” trong phần cài đặt của bạn không khớp nhau (ví dụ: một cái có www, một cái không; một cái http, một cái https), trình duyệt sẽ bị bối rối và không thể xác thực cookie, dẫn đến việc bạn bị đăng xuất.

Cách khắc phục chi tiết:

  • Kiểm tra cài đặt URL: Vào Cài đặt > Tổng quan. Đảm bảo rằng hai trường “Địa chỉ WordPress (URL)”“Địa chỉ trang web (URL)” phải giống hệt nhau. Hãy chọn một phiên bản (có www hoặc không có www) và sử dụng nó cho cả hai trường.

Định nghĩa URL trong wp-config.php: Nếu không thể truy cập trang quản trị, hãy mở file wp-config.php và thêm hai dòng sau, thay yourdomain.com bằng tên miền chính xác của bạn:
PHP
define(‘WP_HOME’,’https://www.yourdomain.com’);

define(‘WP_SITEURL’,’https://www.yourdomain.com’);

  • Thao tác này sẽ ghi đè cài đặt trong cơ sở dữ liệu và buộc WordPress sử dụng URL nhất quán.

Quản trị một website WordPress không chỉ là đăng bài và thiết kế giao diện. Việc chủ động tìm hiểu và xử lý các lỗi kỹ thuật là một phần không thể thiếu trong chiến lược tối ưu website toàn diện. Mỗi lỗi được khắc phục không chỉ giúp trang web hoạt động ổn định, mà còn cải thiện trải nghiệm người dùng, giữ chân khách truy cập và duy trì sự tin tưởng của các công cụ tìm kiếm. Bằng cách áp dụng các hướng dẫn chi tiết trên, bạn sẽ tự tin hơn trong việc quản lý và phát triển trang web của mình một cách bền vững.

Đọc thêm: Usability là gì? Thiết kế Web đáp ứng Usability

Tư vấn báo giá dịch vụ

Họ và tên*
Email*
Số điện thoại*
Dịch vụ *
Yêu cầu công việc*

Kết nối ngay với S'Pencil

S’Pencil Agency luôn sẵn sàng lắng nghe và đưa ra giải pháp tối ưu nhất cho vấn đề của bạn.

Họ và tên*
Email*
Số điện thoại*
Dịch vụ *
Yêu cầu công việc*