Bạn không đề cập đến máy chủ web bạn đang sử dụng, nhưng tôi sẽ đi ra ngoài một chi ở đây và đoán Apache2. Tôi đánh gần như điều bạn mô tả. Tôi đã cố gắng để có được kịch bản cgi của tôi để trả lại thông tin vì nó đã sẵn sàng, thay vì đệm toàn bộ điều. Làm việc lộng lẫy trong curl, vv, nhưng đệm trong một trình duyệt (khá nhiều bất kỳ trình duyệt), mà ít nhất là buồn bã. Tôi đã đi qua các bước chính xác mà bạn mô tả. Độ phân giải trong trường hợp của tôi là để sửa đổi sites-enabled/terrifico.com
tập tin cấu hình trong Apache2 (dòng trong câu hỏi bắt đầu với
SetEnvIfNoCase
(Bạn có thể bỏ qua những thứ trên và dưới dòng đó, tôi chỉ thấy để tiện tham khảo về nơi tôi đặt nó.)
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName test.terrifico.com
ServerAlias test.terrifico.com
SetEnvIfNoCase Request_URI \.cgi$ no-gzip dont-vary
DocumentRoot /var/www/test.terrifico.com
Từ nhìn chằm chằm vào lưu lượng mạng đi tới đi lui, cuối cùng cũng hiểu ra nguyên với tôi rằng trình duyệt đã được quảng cáo rằng nó chấp nhận giảm phát cho bất cứ điều gì (đó là văn bản). Đó là sự khác biệt giữa trình duyệt và curl, ví dụ. Bit nổi bật là
Accept-Encoding: gzip, deflate, sdch
Có một chút thông tin về chunking
, nhưng điều đó không ảnh hưởng đến vấn đề cụ thể này. Vì vậy, trình duyệt đã yêu cầu mod_deflate
để khởi động, điều này đã đánh bại các byte của tôi một cách cẩn thận khi tôi nhận được chúng trong tập lệnh cgi của tôi. Bạn có thể thay đổi nó trong trình duyệt, nhưng nó có vẻ hợp lý hơn để thay đổi nó trên máy chủ một lần cho các tác phẩm.
Có lẽ điều này sẽ hữu ích.
Nguồn
2013-06-21 20:28:31
Không chắc chắn nếu điều này luôn luôn sai hoặc một cái gì đó đã thay đổi trong PHP5.6, nhưng tôi đã phải sử dụng 'php_flag output_buffering Off' để có được' Off' để làm việc. – RiggsFolly
Tôi đặt "output_buffering" từ php.ini từ 4096 thành Tắt và khởi động lại toàn bộ máy chủ, được xác minh bằng phpinfo(); nhưng tôi vẫn phải đối mặt với cùng một vấn đề, máy chủ đang chờ tải trang trước khi gửi dữ liệu đến trình duyệt. Có một cài đặt khác trong Apache2 hoặc Ubuntu 16.04 không? Tôi đang sử dụng PHP7. – Tarik