source: spip-zone/_core_/plugins/compresseur/compresseur_http.php @ 43373

Last change on this file since 43373 was 43373, checked in by cedric@…, 10 years ago

refactoring du compresseur :
Separer par groupes fonctionnel :

  • minifier pour tout ce qui concerne la minification css ou js d'un fichier
  • concatener pour le regroupement de plusieurs fichiers en un (au passage, la fonction est generalisee et les specificites css/js sont simplement gerees par les callbacks passees en appel)
  • embarquer pour tout ce qui concerne(ra) l'inclusion des images en base64 dans les css (a developper)

On rationalise les nommage

File size: 1.1 KB
Line 
1<?php
2
3/**
4 *
5 * Reglage de l'output buffering : si possible, generer une sortie
6 * compressee pour economiser de la bande passante
7 *
8 * Utilisation deconseillee et desactivee par defaut
9 * utilisable uniquement via define('auto_compress_http',true)
10 *
11 */
12
13// si un buffer est deja ouvert, stop
14if ($GLOBALS['flag_ob']
15        AND $GLOBALS['meta']['auto_compress_http'] == 'oui'
16        AND strlen(ob_get_contents())==0
17        AND !headers_sent()) {
18
19        if (
20        // special bug de proxy
21        !(isset($_SERVER['HTTP_VIA']) AND preg_match(",NetCache|Hasd_proxy,i", $_SERVER['HTTP_VIA']))
22        // special bug Netscape Win 4.0x
23        AND (strpos($_SERVER['HTTP_USER_AGENT'], 'Mozilla/4.0') === false)
24        // special bug Apache2x
25        #&& !preg_match(",Apache(-[^ ]+)?/2,i", $_SERVER['SERVER_SOFTWARE'])
26        // test suspendu: http://article.gmane.org/gmane.comp.web.spip.devel/32038/
27        #&& !($GLOBALS['flag_sapi_name'] AND preg_match(",^apache2,", @php_sapi_name()))
28        // si la compression est deja commencee, stop
29        # && !@ini_get("zlib.output_compression")
30        AND !@ini_get("output_handler")
31        AND !isset($_GET['var_mode']) # bug avec le debugueur qui appelle ob_end_clean()
32        )
33                ob_start('ob_gzhandler');
34}
Note: See TracBrowser for help on using the repository browser.