簡體   English   中英

為什么gzip壓縮不起作用?

[英]Why is gzip compression not working?

這是一個奇怪的。 我正在實時服務器上重建網站。 該站點的某些部分已被重建,因此代碼位於主目錄的子目錄中(即:/ mysite / newcode)。

我已經使用ob_start(“ ob_gzhandler”)成功壓縮了舊站點; 因此,我為新代碼應用了完全相同的代碼。 但是,由於某種奇怪的原因,它的返回結果沒有被壓縮。 我已經檢查了http://www.whatsmyip.org/http_compression/http://www.gidnetwork.com/tools/gzip-test.php 我不太明白如果將gzip處理程序作為新舊代碼的第一行(在任何輸出之前)包括在內,為什么不對新代碼進行gzip壓縮。

PHP 5.1.6 Apache 2.0 Centos 5

http://docs.php.net/ob_gzhandler說:

在ob_gzhandler()實際發送壓縮數據之前,它確定瀏覽器將接受哪種類型的內容編碼(“ gzip”,“ deflate”或根本不接受)並相應地返回其輸出。
這可能是造成您問題的原因嗎?

編輯:您可以用類似的東西來測試

 function dbg_ob_gzhandler($buffer, $mode) { error_log('dbg_ob_gzhandler invoked'); $rv = ob_gzhandler($buffer, $mode); if ( false===$rv ) { error_log('client does not support compressed content'); } return $rv; } ob_start('dbg_ob_gzhandler'); 

發現了問題,不確定是否在任何地方進行了記載...

如果您使用ob_start(“ ob_gzhandler”); 而您要刷新內容的內容,則必須使用ob_flush()而不是flush()。 使用沖洗將排除壓縮。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM