HttpResponse::enableCompression

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
pmg
Člen | 372
+
0
-
if (function_exists('ini_set')) {
	ini_set('zlib.output_compression', 'Off');
}
ob_start('ob_gzhandler', 1);

Výstup by se posílal postupně.

David Grudl
Nette Core | 8218
+
0
-

jj, přidám

pmg
Člen | 372
+
0
-

S tebou je radost komunikovat… :-)

Ondřej Mirtes
Člen | 1536
+
0
-

Já to řeším takto, je tam něco přebytečného nebo se to taky má ošetřovat? :)

$req = Environment::getHttpRequest();
$response = Environment::getHttpResponse();

//GZip compression
if (stristr($req->getHeader('Accept-Encoding'), 'gzip') &&
    ob_gzhandler('', PHP_OUTPUT_HANDLER_START) !== FALSE &&
    function_exists('ini_set')) {
        ini_set('zlib.output_compression', 'Off');
        ini_set('zlib.output_compression_level', '6');
        ob_start('ob_gzhandler');
        $response->setHeader('Content-Encoding','gzip');
}
pmg
Člen | 372
+
0
-
Environment::getHttpResponse()->enableCompression();

ob_gzhandler sám zjistí, jestli je komprese podporovaná a chtěná, takže by tohle volání mělo stačit.

Ondřej Mirtes
Člen | 1536
+
0
-

Díky. Já o téhle metodě ani nevěděl, luxus ;)