Sửa lỗi Cannot modify header information

Sửa lỗi Cannot modify header information – headers already sent by… trong WordPress.

khac-phuc-loi-cannot-modify-header-information-trong-wordpress

Thời gian gần đây, một vài bạn sử dụng hosting của GoDaddy, DreamHost, HostGator, Hostvn.net… có liên hệ với tôi để yêu cầu hỗ trợ về việc theme Paradise bị lỗi Cannot modify header information – headers already sent by […] khi cài đặt và kích hoạt. Sau quá trình tìm hiểu, chúng tôi đã tìm ra nguyên nhân và phát hành phiên bản mới để khắc phục vấn đề. Nhân đây, tôi cũng muốn chia sẻ một chút thông tin cho các bạn đang gặp phải tình trạng tương tự.

Tham khảo thêm:

  • Khắc phục lỗi 503 Service Unavailable trong WordPress
  • Hướng dẫn khắc phục lỗi trắng trang trong WordPress

Nguyên nhân gây lỗi Cannot modify header information

Thực ra đây là một lỗi phổ biến hàng đầu trong WordPress, thường xuất hiện khi bạn cài đặt một theme hoặc plugin nào đó không tương thích với phiên bản PHP của hosting hoặc file PHP bị lỗi (có khoảng trắng hoặc ký tự lạ ở đầu file).

Sở dĩ tôi nói như vậy bởi vì cùng chung 1 plugin, 1 theme giống nhau nhưng lỗi này chỉ xuất hiện trên hosting của một số nhà cung cấp nhất định. Ví dụ cùng là theme Paradise nhưng khi cài đặt trên hosting của HawkHost, StableHost, NameCheap… thì không xảy ra tình trạng kể trên.

Phiên bản 4.2.6 của theme Paradise phát hành này 24/02/2017 đã khắc phục hoàn toàn lỗi Cannot modify header information – headers already sent by […].

Khắc phục lỗi Cannot modify header information

Có 3 phương án khác nhau để khắc phục lỗi Cannot modify header information – headers already sent by trong WordPress:

Kiểm tra tập tin PHP bị lỗi

Truy cập vào host thông qua File Manager của cPanel/ DirectAdmin hoặc phần mềm FTP. Tìm và mở file PHP bị lỗi ra (xem đường dẫn của file PHP trong thông báo lỗi). Hãy kiểm tra xem ở đầu file đó có chứa khoảng trắng hay ký tự nào khác trước thẻ <?php hay không? Nếu có, hãy xóa chúng đi rồi lưu lại.

khoang-trang-trong-file-php

Làm tương tự với các file functions.php của theme:

khoang-trang-trong-file-functions-php-cua-theme

Và file wp-config.php:

khoang-trang-trong-file-wp-config-php

Xóa cache (nếu có) và kiểm tra kết quả.

Sử dụng lệnh ob_start(); và ob_end_flush();

Nếu phương pháp bên trên vẫn không có hiệu quả, hãy thử chèn các lệnh sau đây vào bên trong file PHP bị lỗi:

  • Chèn lệnh ob_start(); vào đầu file PHP. Lệnh này có tác dụng khởi động vùng đệm của server để chứa tạm thời nội dung echo (xuất) vào đó.
  • Chèn lệnh ob_end_flush(); vào cuối file PHP. Lệnh này có tác dụng đưa dữ liệu từ vùng đệm của server về lại phần nội dung.

Lưu lại và kiểm tra kết quả.

Chỉnh sửa file php.ini

Nếu bạn có quyền thiết lập file php.ini của hosting, hãy thêm đoạn code sau đây vào bên trong nó:

Nếu bạn không có quyền chỉnh sửa file này, vui lòng liên hệ nhà cung cấp dịch vụ để yêu cầu hỗ trợ.

Trên đây là 3 phương án để khắc phục lỗi Cannot modify header information […]. Hy vọng nó sẽ giúp bạn nhanh chóng giải quyết được vấn đề đang gặp phải. Mọi thắc mắc và góp ý liên quan đến lỗi Cannot modify header information […] xin vui lòng gửi vào khung bình luận bên dưới để được hỗ trợ và giải đáp.

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. :)

Tìm kiếm