Данные Gzip для отправки в браузер в php - PullRequest
0 голосов
/ 11 сентября 2011

Я хочу, чтобы данные Gzip (css, js) отправлялись в браузер в php.Я попытался gzcompress , gzencode , но оба сделали файл неузнаваемым браузером

Данные из firebug для дома.css

Date    Sat, 10 Sep 2011 22:31:59 GMT
Server  Apache/2.2.14 (Ubuntu)
X-Powered-By    PHP/5.3.2-1ubuntu4.9
Expires Sat, 17 Sep 2011 22:31:59 GMT
Cache-Control   public
Pragma  no-cache
Etag    e35b61f80bbf8e0dd722c50c65ec6da5
Vary    Accept-Encoding
Content-Encoding    gzip
Content-Length  25163
Keep-Alive  timeout=15, max=92
Connection  Keep-Alive
Content-Type    text/css

РЕДАКТИРОВАТЬ: Я даже попытался ниже, что тоже не сработало

<?php 
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
 ob_start("ob_gzhandler"); 
else 
ob_start(); 
?>

Ответы [ 2 ]

0 голосов
/ 11 сентября 2011

попробуйте

<?php
ob_start("ob_gzhandler");
echo file_get_contents("stylesheet.css");
ob_end_flush();
?>

http://php.net/manual/en/function.ob-gzhandler.php

http://www.php.net/manual/en/function.ob-end-flush.php

только что проверил это с apache, если это не работает для вас, вы что-то напутали в своей конфигурации apache.

заголовки:

Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:180
Content-Type:text/html
Date:Sat, 10 Sep 2011 23:11:18 GMT
Keep-Alive:timeout=5, max=99
Server:Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1
Vary:Accept-Encoding
X-Powered-By:PHP/5.3.5
0 голосов
/ 11 сентября 2011

Вам необходимо установить соответствующие заголовки , чтобы браузер распознал файл как сжатый.

Это действительно лучше для вашего веб-сервера, чем для вашего кода.

...