Khắc phục lỗi Màn hình trắng 'Sự cố kỹ thuật' của WordPress

trung bình📝 WordPress2026-03-16| WordPress (tất cả các phiên bản), PHP, Máy chủ Web (Apache, Nginx), môi trường lưu trữ Linux/Windows.

Error Message

The site is experiencing technical difficulties
#wordpress#wsod#gỡ lỗi#khắc phục sự cố#php

Khi trang WordPress của bạn bị trống: Lỗi 'Sự cố kỹ thuật'

Không có gì đáng sợ bằng khoảnh khắc đó: bạn truy cập trang WordPress của mình, háo hức mong đợi nội dung, nhưng thay vào đó, bạn lại được chào đón bằng một trang trắng xóa. Đôi khi, bạn sẽ thấy một thông báo cung cấp thông tin hơn một chút, nhưng vẫn đầy đáng ngại: "The site is experiencing technical difficulties". "Màn hình trắng chết chóc" (WSOD) khét tiếng này có thể cực kỳ khó chịu.

Nó thường không cung cấp manh mối ngay lập tức về những gì đã xảy ra. Với tư cách là một kỹ sư IT, tôi đã gặp vấn đề này vô số lần. Mặc dù trông có vẻ tồi tệ, nhưng hầu như luôn có thể giải quyết được.

WSOD thường báo hiệu một lỗi PHP nghiêm trọng. Điều này có nghĩa là PHP không thể tiếp tục xử lý trang. Nguyên nhân gốc rễ có thể là một plugin bị lỗi, một theme xung đột, hết bộ nhớ PHP hoặc thậm chí là một lỗi nhỏ trong đoạn mã. Để khắc phục, bạn sẽ cần một phương pháp gỡ lỗi có hệ thống. Điều này sẽ giúp bạn xác định chính xác vấn đề.

Hành trình gỡ lỗi: Khám phá thủ phạm

Bước 1: Kích hoạt chế độ gỡ lỗi WordPress (Đồng minh mạnh nhất của bạn)

Bước đầu tiên và quan trọng nhất của bạn là yêu cầu WordPress tiết lộ bí mật của nó. Theo mặc định, WordPress thường ẩn các thông báo lỗi vì lý do bảo mật và thẩm mỹ. Chúng ta cần tạm thời tắt điều đó. Truy cập các tệp của trang web bằng FTP, SFTP hoặc Trình quản lý tệp của bảng điều khiển lưu trữ của bạn. Điều hướng đến thư mục gốc của cài đặt WordPress của bạn và tìm tệp wp-config.php. Mở tệp này để chỉnh sửa.

Tìm dòng có nội dung define( 'WP_DEBUG', false ); và thay đổi false thành true. Nếu bạn không thấy dòng này, hãy thêm nó ngay trước nhận xét: /* That's all, stop editing! Happy publishing. */.

define( 'WP_DEBUG', true );
// Tùy chọn: Ghi nhật ký lỗi vào một tệp thay vì hiển thị trên màn hình
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Các dòng WP_DEBUG_LOGWP_DEBUG_DISPLAY rất được khuyến nghị, đặc biệt đối với các trang web đang hoạt động. Đặt WP_DEBUG_DISPLAY thành falseWP_DEBUG_LOG thành true ngăn không cho các thông báo lỗi xuất hiện trực tiếp trên trang web công khai của bạn. Thay vào đó, các lỗi này sẽ được ghi vào một tệp debug.log trong thư mục wp-content của bạn. Phương pháp này an toàn hơn nhiều.

Sau khi lưu tệp wp-config.php, hãy làm mới trang web của bạn. Nếu WSOD vẫn tiếp diễn, hãy kiểm tra tệp debug.log bên trong /wp-content/. Nhật ký này thường chứa các chi tiết lỗi PHP chính xác, bao gồm đường dẫn tệp và số dòng. Thông tin này vô cùng quý giá để chẩn đoán.

Bước 2: Cô lập vấn đề (Plugin so với Theme)

Hầu hết các vấn đề WSOD đều bắt nguồn từ một plugin được cài đặt hoặc cập nhật gần đây, hoặc xung đột với theme của bạn.

Tắt tất cả các Plugin

Nếu bạn không thể truy cập bảng điều khiển quản trị WordPress của mình – một kịch bản phổ biến với WSOD – bạn sẽ cần tắt các plugin theo cách thủ công:

  • Sử dụng FTP/SFTP/Trình quản lý tệp, đi tới thư mục /wp-content/.
  • Đổi tên thư mục plugins thành một tên khác, chẳng hạn như plugins_old.
  • Làm mới trang web của bạn. Nếu trang web tải đúng cách, thì một plugin chính là nguyên nhân.

Bây giờ, đổi tên plugins_old trở lại thành plugins. Truy cập bảng điều khiển quản trị WordPress của bạn và điều hướng đến phần "Plugins". Bạn sẽ thấy tất cả các plugin của mình đã bị tắt. Kích hoạt lại chúng từng cái một, làm mới trang web của bạn sau mỗi lần kích hoạt. Khoảnh khắc WSOD xuất hiện trở lại, plugin cuối cùng bạn kích hoạt chính là thủ phạm. Sau đó, bạn có thể xóa nó hoặc tìm kiếm một giải pháp thay thế.

Chuyển sang Theme mặc định

Nếu việc tắt các plugin không giải quyết được vấn đề, theme đang hoạt động của bạn có thể là nguyên nhân.

  • Qua FTP/SFTP/Trình quản lý tệp, điều hướng đến /wp-content/themes/.
  • Đổi tên thư mục theme đang hoạt động của bạn (ví dụ: đổi mytheme thành mytheme_old).
  • WordPress sẽ tự động chuyển sang một theme mặc định, chẳng hạn như Twenty Twenty-Four hoặc Twenty Twenty-Three.
  • Làm mới trang web của bạn. Nếu nó hoạt động trở lại, theme tùy chỉnh của bạn đang gây ra sự cố.

Sau đó, bạn có thể thử cài đặt lại theme hoặc liên hệ với nhà phát triển để được hỗ trợ. Nếu bạn không thể truy cập khu vực quản trị, bạn có thể cần cài đặt thủ công một theme mặc định. Để thực hiện việc này, hãy tải xuống một theme mặc định mới (như Twenty Twenty-Four), tải thư mục của nó lên /wp-content/themes/, sau đó đổi tên thư mục theme đang gặp vấn đề của bạn.

Bước 3: Tăng giới hạn bộ nhớ PHP của bạn

Đôi khi, các hoạt động phức tạp, đặc biệt với các plugin lớn hoặc theme tiêu tốn nhiều tài nguyên, đòi hỏi nhiều bộ nhớ hơn mức PHP hiện được cấp phát. Điều này có thể dẫn đến WSOD. Vấn đề này thường xuất hiện dưới dạng lỗi "Allowed memory size of X bytes exhausted" trong debug.log của bạn, trong đó 'X' thường là một giá trị như '128MB' hoặc '256MB'.

Bạn có thể thử tăng giới hạn bộ nhớ bằng một trong các tùy chọn sau:

Tùy chọn A: Chỉnh sửa wp-config.php

Thêm dòng sau (hoặc sửa đổi nếu nó đã tồn tại) phía trên nhận xét "That's all, stop editing!":

define('WP_MEMORY_LIMIT', '256M');

Tùy chọn B: Sửa đổi php.ini

Nếu bạn có quyền truy cập trực tiếp vào tệp php.ini của máy chủ (thường thông qua cPanel hoặc bảng điều khiển lưu trữ của bạn), hãy tìm và cập nhật dòng này:

memory_limit = 256M ; Lượng bộ nhớ tối đa một script có thể tiêu thụ (256MB)

Quan trọng là, hãy nhớ khởi động lại máy chủ web của bạn (Apache/Nginx) sau khi chỉnh sửa trực tiếp php.ini để các thay đổi có hiệu lực.

Tùy chọn C: Điều chỉnh .htaccess

Thêm dòng này vào tệp .htaccess của bạn, nằm trong thư mục gốc WordPress của bạn:

php_value memory_limit 256M

Chỉ chọn một trong các phương pháp này. Bắt đầu với 256M; nếu vấn đề vẫn tiếp diễn, hãy tăng dần lên 512M.

Bước 4: Kiểm tra quyền truy cập tệp

Quyền truy cập tệp không chính xác có thể ngăn WordPress đọc hoặc ghi các tệp thiết yếu, gây ra lỗi. Mặc dù ít phổ biến hơn là nguyên nhân trực tiếp của WSOD, nhưng nó chắc chắn đáng được điều tra, đặc biệt nếu bạn gần đây đã di chuyển trang web của mình hoặc thay đổi cấu hình máy chủ.

Đây là các quyền được đề xuất cho các tệp và thư mục WordPress:

  • Tệp: 644
  • Thư mục: 755
  • wp-config.php: 644 hoặc 440 (cái sau hạn chế hơn và thường được ưu tiên để tăng cường bảo mật)

Bạn thường có thể điều chỉnh các quyền này thông qua ứng dụng khách FTP hoặc Trình quản lý tệp của mình. Nếu bạn có quyền truy cập SSH, bạn có thể chạy các lệnh này trực tiếp từ thư mục gốc WordPress của mình:

sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;
sudo chmod 644 wp-config.php

Ngoài ra, hãy đảm bảo rằng người dùng chạy máy chủ web của bạn (ví dụ: www-data cho Apache trên Debian/Ubuntu, hoặc apache cho Apache trên CentOS/RHEL) là chủ sở hữu của các tệp. Bạn có thể cần điều chỉnh quyền sở hữu bằng cách sử dụng lệnh sau:

sudo chown -R www-data:www-data .

Hãy nhớ thay thế www-data bằng người dùng và nhóm máy chủ web cụ thể của bạn nếu chúng khác nhau.

Bước 5: Thay thế các tệp WordPress Core bị hỏng

Trong một số trường hợp hiếm hoi, một bản cập nhật thủ công hoặc trục trặc máy chủ có thể làm hỏng các tệp WordPress core. Nếu điều này xảy ra, bạn có thể thử thay thế chúng bằng các bản sao mới:

  • Tải xuống một bản sao mới của phiên bản WordPress chính xác của bạn từ wordpress.org/download/releases/.
  • Giải nén tệp zip vào máy tính cục bộ của bạn.
  • Sử dụng FTP/SFTP, tải lên các thư mục wp-adminwp-includes từ bản tải xuống mới của bạn lên trang web, ghi đè lên các thư mục hiện có.
  • Tiếp theo, tải lên các tệp riêng lẻ từ thư mục gốc của bản tải xuống mới (ví dụ: index.php, wp-login.php). Tuy nhiên, không ghi đè thư mục wp-content hoặc tệp wp-config.php quan trọng của bạn.

Xác minh cách khắc phục: Đã hoạt động chưa?

Sau khi bạn đã thực hiện một giải pháp tiềm năng:

  • Làm mới trang web của bạn: Kiểm tra cả giao diện người dùng của trang web và bảng điều khiển quản trị WordPress (yourdomain.com/wp-admin).
  • Kiểm tra nhật ký lỗi: Nếu bạn đã bật WP_DEBUG_LOG, hãy xem lại tệp wp-content/debug.log. Tìm kiếm bất kỳ lỗi mới hoặc thông báo còn sót lại nào.
  • Khôi phục chức năng dần dần: Nếu trước đó bạn đã tắt các plugin hoặc theme, hãy bật lại chúng từng cái một (chỉ khi bạn tự tin rằng nó an toàn) để xác nhận trang web của bạn vẫn ổn định.
  • Tắt chế độ gỡ lỗi: Khi trang web của bạn hoạt động đầy đủ, điều quan trọng là phải khôi phục WP_DEBUG thành false trong tệp wp-config.php của bạn. Điều này ẩn các thông báo lỗi khỏi chế độ xem công khai và giúp duy trì bảo mật và hiệu suất.
define( 'WP_DEBUG', false );
define( 'WP_DEBUG_LOG', false ); // Cũng đặt thành false
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Những điểm chính cần lưu ý để ổn định trong tương lai

  • Sao lưu là cứu cánh của bạn: Luôn, luôn duy trì các bản sao lưu gần đây của cả tệp WordPress và cơ sở dữ liệu của bạn. Đây là mạng lưới an toàn tối thượng của bạn trong bất kỳ cuộc khủng hoảng nào.
  • Sử dụng môi trường staging: Trước khi đẩy bất kỳ bản cập nhật plugin, theme hoặc WordPress core nào lên trang web trực tiếp của bạn, hãy kiểm tra chúng kỹ lưỡng trên một trang web staging. Điều này ngăn ngừa các vấn đề không mong muốn.
  • Áp dụng gỡ lỗi có hệ thống: Đừng hoảng sợ khi vấn đề phát sinh. Thay vào đó, hãy tiếp cận vấn đề một cách có phương pháp. Bắt đầu bằng cách kiểm tra nhật ký gỡ lỗi, sau đó cô lập có hệ thống các thành phần như plugin và theme.
  • Làm chủ nhật ký của bạn: Nhật ký lỗi PHP và nhật ký gỡ lỗi WordPress là những nguồn thông tin vô giá. Học cách đọc và hiểu chúng sẽ nâng cao đáng kể kỹ năng khắc phục sự cố của bạn.
  • Không bao giờ chỉnh sửa trực tiếp các tệp mà không có kế hoạch: Trước khi sửa đổi các tệp quan trọng như wp-config.php, luôn tạo một bản sao lưu. Điều này đảm bảo bạn có thể dễ dàng hoàn nguyên nếu có gì đó không ổn.

Thông báo "The site is experiencing technical difficulties", mặc dù ban đầu đáng sợ, chỉ đơn giản là trang WordPress của bạn đang yêu cầu một chút sự chú ý. Bằng cách làm theo các bước có cấu trúc này, bạn có thể sẽ đưa trang web của mình hoạt động trở lại nhanh chóng. Bạn cũng sẽ hiểu sâu hơn về cách khắc phục sự cố WordPress phổ biến một cách hiệu quả, giúp bạn trở thành một quản trị viên trang web tự tin hơn.

Related Error Notes