Đây là phần tiếp theo cho câu hỏi về Cách gỡ lỗi: Header ALREADY SENT và GD2 . Cụ thể cách khắc phục các lỗi sau (lưu ý dòng đầu tiên đã được thêm bằng lời khuyên gỡ lỗi trước để theo dõi nguồn):
2014-02-04T14:26:06+00:00 DEBUG (7): Cannot send headers; headers already sent in /home/.../lib/Varien/Image/Adapter/Gd2.php, line 133
2014-02-05T16:14:32+00:00 DEBUG (7): HEADERS ALREADY SENT: < pre >
[0] /home/.../app/code/core/Mage/Core/Controller/Response/Http.php:52
[1] /home/.../lib/Zend/Controller/Response/Abstract.php:766
[2] /home/.../app/code/core/Mage/Core/Controller/Response/Http.php:83
[3] /home/.../app/code/core/Mage/Core/Controller/Varien/Front.php:188
[4] /home/.../app/code/core/Mage/Core/Model/App.php:354
[5] /home/.../app/Mage.php:683
[6] /home/.../public_html/index.php:87
</ pre >
Câu hỏi đó là về cách gỡ lỗi vấn đề này. Câu hỏi này là về cách khắc phục nó. Theo "câu trả lời" của tôi cho câu hỏi đó và đã thực hiện thêm một số thử nghiệm trên bản cài đặt Magento vanilla, tôi có thể xác nhận rằng đây có vẻ là lỗi lõi Magento (v1.7.0.2).
Chỉ cần quản lý hình ảnh trên các trang hoặc khối tĩnh, sử dụng trình quản lý hình ảnh / khối Magento tiêu chuẩn sẽ gây ra các nhật ký này. Để tái tạo, mở một trang có hình ảnh trên đó. Sẽ có một trong những đăng nhập trên mỗi hình ảnh trên trang. Mở trình quản lý hình ảnh và xem hình ảnh được tải lên - sẽ có một hình ảnh khác cho mỗi hình ảnh được hiển thị.
Vấn đề dường như là với chức năng này, mà trong quá trình đọc của tôi chắc chắn sẽ gây ra lỗi này bất cứ khi nào một hình ảnh CMS được tìm nạp để hiển thị trong bảng điều khiển.
public function display()
{
header("Content-type: ".$this->getMimeType());
call_user_func($this->_getCallback('output'), $this->_imageHandler);
}
Mặc dù nó dường như không có bất kỳ tác động nào đến cửa hàng, nhưng tôi không muốn coi đây là "lỗi lành tính" (vì Microsoft muốn gọi những thứ mà họ không thể sửa / sửa!). Tôi đoán rằng chúng ta chỉ có thể sửa đổi canSendHeader () trong lib / Zend / Controller / Feedback / Abstract.php để không gây ra lỗi nếu tập tin $ là gd2.php, nhưng đó chỉ là một lỗi khó chịu!
Một số điểm trông giống như trước khi canSendHeaders được gọi là một phần của việc hiển thị hình ảnh CMS trong bảng điều khiển, $ throw hoặc $ this-> headersSentThrowsException nên được đặt thành sai để điều này không tạo ra ngoại lệ.
Có ý kiến gì không? Hay đây là thứ mà chủ sở hữu Magento đã học được để sống cùng!?