Hướng dẫn khắc phục lỗi trắng trang, lỗi 500 (Internal Server Error) trong website WordPress.
Bạn cài một plugin mới hoặc chỉnh sửa các tập tin của theme và sau đó phát hiện ra website của mình bị dính lỗi trắng trang hay lỗi 500? Không có bất cứ thứ gì được hiển thị trên giao diện web, cũng không thấy bất kỳ thông báo lỗi nào ngoài một màu trắng tinh? Trường hợp này còn được gọi là “White Screen of Death”, “lỗi màn hình trắng”, “lỗi trắng trang” hay đôi khi là lỗi 500 (Internal Server Error). Đừng quá lo lắng, mọi việc đều có cách giải quyết. Hôm nay, tôi sẽ hướng dẫn các bạn một số cách thông dụng nhất để khắc phục lỗi trắng trang trong WordPress. Hãy dành ra vài phút để cùng WP Căn bản tìm hiểu nhé.
Tham khảo thêm:
.htaccess
Có 3 cách khác nhau để làm việc này:
Tập tin wp-config.php
trong thư mục gốc của WordPress là chìa khóa để tìm ra vấn đề mà website của bạn đang gặp phải. Tất cả những gì bạn cần làm là thêm một vài dòng mã để kích hoạt “chế độ gỡ lỗi” (debug) cho website của mình.
Bật chế độ debug một cách hiệu quả sẽ giúp hiển thị danh sách các lỗi đang tồn tại. Nếu website của bạn được cài đặt trên localhost (offiline), hãy thêm dòng code sau đây vào file wp-config.php
:
Lưu ý, bạn phải chèn nó vào bên trên dòng sau:
Nếu file wp-config.php
của bạn đã có sẵn đoạn code WP_DEBUG
, bạn chỉ cần chuyển giá trị của nó từ false
sang true
là được.
Nếu website đang trực tuyến (online), bạn không nên sử dụng code bên trên bởi vì tất cả các dòng thông báo lỗi sẽ xuất hiện công khai trên web, bao gồm cả đường dẫn đến tập tin trên máy chủ web và các thông tin nhạy cảm khác. Thay vào đó, bạn hãy bật tính năng ghi thông báo lỗi vào trong một tập tin bí mật.
Để kích hoạt tính năng bản ghi lỗi (error_log) và gỡ lỗi (debug) cho một website trực tuyến, hãy thêm đoạn code sau vào tập tin wp-config.php
của bạn (ở vị trí giống như ở trên):
Khi đã xong, bạn có thể kiểm tra các thông báo lỗi ngay trên front-end của website hoặc trong error_log. Bản ghi lỗi thường nằm trong thư mục wp-content, tại địa chỉ: /wp-content/debug.log. Một khi đã phát hiện được nguyên nhân gây lỗi, bạn có thể bắt đầu tìm cách sửa chữa nó (copy mã lỗi và tìm kiếm hướng dẫn trên Google chẳng hạn).
Rất nhiều plugin có sẵn có thể giúp bạn nhanh chóng xử lý các sự cố trên website của mình một cách dễ dàng. Nếu bạn vẫn có thể truy cập được vào bảng điều khiển WordPress (chỉ bị trắng trang ở giao diện bên ngoài), hãy cố gắng cài đặt một plugin để giúp xác định nguyên nhân gây lỗi.
Những plugin kể trên đều đáng tin cậy và được cập nhật thường xuyên để đảm bảo khả năng tương thích cũng như sự ổn định. Một khi bạn đã chọn được plugin phù hợp, hãy tiến hành cài đặt và bắt đầu tìm kiếm các lỗi cần sửa chữa.
Nếu đang sử dụng cPanel, bạn có thể kiểm tra các bản ghi lỗi bằng cách click vào mục Error Log trong phần Logs.
Nếu bạn đang sử dụng Plesk, hãy click vào tab Files trên menu top => chọn tiếp mục logs trong menu bên trái, sau đó chọn file error_log từ danh sách.
Nếu bạn đang sử dụng một loại web control panel khác và không chắc chắn về nơi lưu trữ error_log, hãy kiểm tra trang Knowledge Base (KB) của nhà cung cấp hosting hoặc sử dụng Google Search để nhanh chóng để tìm ra vị trí của nó.
Dựa theo các nguyên nhân đã được liệt kê ở trên, chúng ta có thể đề ra một số giải pháp để khắc phục như sau:
Trong trường hợp bạn đã xác định được nguyên nhân gây lỗi trắng trang là do WordPress, theme, plugin bị lỗi file hoặc thiếu file, hãy tiến hành cài đặt lại mã nguồn của chúng bằng phương pháp thủ công. Download mã nguồn của WordPress, theme hoặc plugin từ WordPress.org => truy cập thư mục cài đặt WordPress thông qua File Manager của cPanel/ DirectAdmin hoặc phần mềm FTP => Upload file mã nguồn đã download vào thư mục tương ứng => giải nén và ghi đè lên mã nguồn hiện tại.
Tham khảo thêm: Hướng dẫn cập nhật WordPress theo phương pháp thủ công
Sau khi truy cập được vào website, đừng quên cài đặt plugin bảo mật (chẳng hạn như Defender Security hoặc Sucuri Security) để quét xem có file nào lạ trong mã nguồn WordPress của bạn hay không nhé.
Nếu bạn vẫn có thể truy cập được vào trang quản trị của WordPress, hãy thử đổi về theme mặc định (2020, 2021…) xem sao. Nếu lỗi trắng trang biến mất và website của bạn xuất hiện trở lại thì có nghĩa là theme mà bạn đang sử dụng có lỗi hoặc xung đột với WordPress hoặc một trong những plugin đang dùng.
Trong trường hợp ngược lại, hãy truy cập thư mục cài đặt WordPress thông qua File Manager của cPanel/ DirectAdmin hoặc phần mềm FTP => tìm tới địa chỉ /wp-content/themes/ => đổi tên thư mục của theme mà bạn đang dùng (thêm _old vào sau tên thư mục chẳng hạn). Nếu nguyên nhân là do theme, bạn sẽ có thể truy cập được vào trang quản trị của WordPress để kích hoạt theme mặc định.
Truy cập thư mục cài đặt WordPress của bạn thông qua File Manager cPanel/ DirectAdmin hoặc phần mềm FTP => tìm tới địa chỉ /wp-content/plugins/ => đổi tên toàn bộ thư mục của các plugin mà bạn đã cài đặt (thêm _old vào sau tên thư mục chẳng hạn). Nếu website của bạn hoạt động bình thường trở lại, hãy thử kích hoạt lần lượt từng plugin một (bằng cách đổi tên của từng thư mục về như cũ) cho đến khi lỗi trắng trang xuất hiện. Khi đó, bạn sẽ biết plugin nào chính là nguyên nhân gây ra vấn đề.
Nếu trước đó bạn chèn code tùy biến vào file theme dẫn đến lỗi trắng trang thì tất cả những gì bạn cần làm là truy cập thư mục cài đặt WordPress thông qua File Manager của cPanel/ DirectAdmin hoặc phần mềm FTP => tìm tới địa chỉ /wp-content/themes/ => mở file theme mà bạn đã chèn code ra => xóa đoạn code đó đi rồi lưu lại là được.
Nếu bạn có sẵn bản backup trước đó của tập tin .htaccess
, hãy upload và ghi đè lên tập tin .htaccess
hiện tại (trong thư mục cài đặt của WordPress, nằm ngang hàng với file wp-config.php
). Còn nếu không, hãy chỉnh sửa nội dung của tập tin .htaccess
về dạng “xuất xưởng” như sau:
Nếu bạn cài đặt WordPress multisite, hãy tham khảo thêm các file .htaccess
mặc định tại đây.
Tham khảo bài viết “Hiển thị file .htaccess trong cPanel một cách đơn giản” nếu bạn không tìm thấy file .htaccess
. Lưu ý, file này chỉ có trên các web server Apache và LiteSpeed/ Open LiteSpeed, không có trên web server NginX.
Lưu lại và kiểm tra xem trang web của bạn đã có thể truy cập bình thường chưa nhé.
Plugin tạo bộ nhớ đệm (cache) có thể là nguyên nhân gây ra lỗi trắng trang cho website của bạn, đặc biệt là khi bạn update dữ liệu hoặc chuyển host mà quên không vô hiệu hóa plugin này. Để kiểm tra xem plugin tạo cache có phải là thủ phạm hay không, các bạn chỉ cần truy cập thư mục /wp-content/plugins/, tìm và đổi tên thư mục của nó đi là được (thêm _old vào sau tên thư mục chẳng hạn).
Nó đã vượt quá mức cho phép? Điều này có thể gây ra lỗi trắng trang. Nếu được, bạn nên tham khảo ý kiến của nhà cung cấp hosting để tìm giải pháp khắc phục.
Và trong hầu hết các trường hợp, cách đơn giản nhưng hiệu quả nhất để khắc phục lỗi trắng trang (nếu bạn không tìm ra nguyên nhân cụ thể) chính là restore dữ liệu từ các bản backup sẵn có. Vì vậy, đừng quên sao lưu dữ liệu website của bạn trước khi có ý định làm bất cứ điều gì nguy hiểm nhé.
Trên đây là một số phương pháp giúp bạn nhanh chóng phát hiện nguyên nhân và khắc phục lỗi trắng trang trong WordPress. Nếu bạn biết bất kỳ phương pháp nào khác, đừng quên chia sẻ nó với chúng tôi trong khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi 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 nhé. Cảm ơn rất nhiều. :)