Trong hai tháng qua, tôi đã nhận được lỗi sau trên bảng điều khiển dành cho nhà phát triển của Chrome:
net::ERR_INCOMPLETE_CHUNKED_ENCODING
Triệu chứng:
- Trang không tải.
- Các tệp CSS và JS bị cắt bớt.
- Trang treo.
Môi trường máy chủ:
- Apache 2.2.22
- PHP
- Ubuntu
Điều này đang xảy ra với tôi trên máy chủ Apache nội bộ của chúng tôi. Điều này không xảy ra với bất kỳ ai khác - tức là Không ai trong số những người dùng của chúng tôi gặp phải vấn đề này - cũng không có ai khác trong nhóm nhà phát triển của chúng tôi.
Những người khác đang truy cập cùng một máy chủ với cùng một phiên bản Chrome chính xác. Tôi cũng đã thử vô hiệu hóa tất cả các tiện ích mở rộng và duyệt ở chế độ Ẩn danh - không có hiệu lực.
Tôi đã sử dụng Firefox và điều tương tự đang xảy ra. Các tập tin bị cắt và không có gì. Điều duy nhất là, Firefox không đưa ra bất kỳ lỗi nào trong bảng điều khiển, do đó bạn cần kiểm tra yêu cầu HTTP thông qua Fireorms để xem vấn đề.
Tiêu đề phản hồi từ Apache:
Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection:close
Content-Encoding:gzip
Content-Type:text/html; charset=utf-8
Date:Mon, 27 Apr 2015 10:52:52 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
Pragma:no-cache
Server:Apache/2.2.22 (Ubuntu)
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Powered-By:PHP/5.3.10-1ubuntu3.8
Trong khi thử nghiệm, tôi đã có thể khắc phục sự cố bằng cách buộc HTTP 1.0 trong tệp htaccess của mình:
SetEnv downgrade-1.0
Điều này được thoát khỏi vấn đề. Tuy nhiên, buộc HTTP 1.0 trên HTTP 1.1 không phải là một giải pháp thích hợp.
Cập nhật : Bởi vì tôi là người duy nhất gặp phải vấn đề này, tôi nhận ra rằng tôi cần dành nhiều thời gian hơn để điều tra xem đó có phải là vấn đề của khách hàng hay không. Nếu tôi truy cập cài đặt của Chrome và sử dụng tùy chọn "Khôi phục về mặc định", sự cố sẽ biến mất trong khoảng 10-20 phút. Rồi nó trở về.
while($row = mysql_fetch_assoc($result))
có thể có quá nhiều dòng trống gây ra sự cắt bớt bởi các trình duyệt web