[SPIP] +spip v3.0.17
[lhc/web/clavette_www.git] / www / plugins-dist / compresseur / compresseur_options.php
1 <?php
2
3 /**
4 * Réglage de l'output buffering
5 *
6 * Si possible, générer une sortie compressée pour économiser de la bande passante
7 *
8 * Utilisation déconseillee et désactivee par défaut.
9 * Utilisable uniquement via define('_AUTO_GZIP_HTTP',true)
10 *
11 * @package SPIP\Compresseur\Options
12 */
13
14 // si un buffer est deja ouvert, stop
15 if ($GLOBALS['flag_ob']
16 AND defined('_AUTO_GZIP_HTTP') AND _AUTO_GZIP_HTTP
17 AND strlen(ob_get_contents())==0
18 AND !headers_sent()) {
19
20 if (
21 // special bug de proxy
22 !(isset($_SERVER['HTTP_VIA']) AND preg_match(",NetCache|Hasd_proxy,i", $_SERVER['HTTP_VIA']))
23 // special bug Netscape Win 4.0x
24 AND (strpos($_SERVER['HTTP_USER_AGENT'], 'Mozilla/4.0') === false)
25 // special bug Apache2x
26 #&& !preg_match(",Apache(-[^ ]+)?/2,i", $_SERVER['SERVER_SOFTWARE'])
27 // test suspendu: http://article.gmane.org/gmane.comp.web.spip.devel/32038/
28 #&& !($GLOBALS['flag_sapi_name'] AND preg_match(",^apache2,", @php_sapi_name()))
29 // si la compression est deja commencee, stop
30 # && !@ini_get("zlib.output_compression")
31 AND !@ini_get("output_handler")
32 AND !isset($_GET['var_mode']) # bug avec le debugueur qui appelle ob_end_clean()
33 )
34 ob_start('ob_gzhandler');
35 }