[英]NGINX and PHP Gzip compression not working in browser but works in cURL
我的NGinx和PHP安裝程序中發生了一個特殊的問題。
我的測試網址: http : //104.194.26.13 :2002/ a.php
我正在將PHP與NGinx(FCGI)一起使用。 要壓縮我正在使用的數據:
<?php
ob_start('ob_gzhandler');
phpinfo();
?>
通過瀏覽器訪問時,它顯示:
Vary: Accept-Encoding
但是,沒有Content-Encoding,Firebug中顯示的下載數據的大小是未壓縮數據的大小。
使用curl從CLI訪問時:
curl -H "Accept-Encoding: gzip" "http://104.194.26.13:2002/a.php"
有一些gbiresh字符表明它確實進行了編碼。 如果使用上述命令保存輸出,則通過瀏覽器訪問時,大小為17.5 KB,而不是75 KB。
這是從我的a.php文件收到的完整標頭:
Connection: keep-alive
Content-Length: 75550
Content-Type: text/html
Date: Fri, 15 Jan 2016 05:37:43 GMT
Server: nginx
Vary: Accept-Encoding
X-Powered-By: PHP/5.5.27
有什么可能是錯的?
您使用的是哪種瀏覽器,因為Chrome 47.0.2526.106 m
顯示如下:
現在,如評論中所述,為什么不嘗試直接從Nginx壓縮它? 通過在nginx配置中利用gzip壓縮:
# enable gzip compression
gzip on;
gzip_min_length 1100;
gzip_buffers 4 32k;
gzip_types text/plain application/x-javascript text/xml text/css;
gzip_vary on;
# end gzip configuration
這是我的請求標頭:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Host:104.194.26.13:2002
Referer:http://stackoverflow.com/questions/34805168/nginx-and-php-gzip-compression-not-working-in-browser-but-works-in-curl/34805312?noredirect=1
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.