Pagina 1 van 1

Fast and Furious Hack (Gzip modificatie)

Geplaatst: 17 apr 2005, 13:00
door Lontronics
Ik kwam de Fast and Furious modificatie tegen in een van de topics en heb deze vervolgens uitgeprobeerd op mijn forum.
Deze modificatie is een aanpassing op het Gzip-script wat bovenin page_header.php staat, echter, ik vraag me met name af waar de snelheidswinst vandaan zou moeten komen.... :?

Origineel zoals ik hem had staan in page_header.php:

Code: Selecteer alles

// 
// gzip_compression 
// 
$do_gzip_compress = FALSE; 
if ( $board_config['gzip_compress'] ) 
{ 
   $phpver = phpversion(); 

   $useragent = (isset($_SERVER["HTTP_USER_AGENT"]) ) ? $_SERVER["HTTP_USER_AGENT"] : $HTTP_USER_AGENT; 

   if ( $phpver >= '4.0.4pl1' && ( strstr($useragent,'compatible') || strstr($useragent,'Gecko') ) ) 
   { 
      if ( extension_loaded('zlib') ) 
      { 
	 ob_end_clean();	 
         ob_start('ob_gzhandler'); 
      } 
   } 
   else if ( $phpver > '4.0' ) 
   { 
      if ( strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip') ) 
      { 
         if ( extension_loaded('zlib') ) 
         { 
            $do_gzip_compress = TRUE; 
            ob_start(); 
            ob_implicit_flush(0); 

            header('Content-Encoding: gzip'); 
         } 
      } 
   } 
} 
Vervangen door:

Code: Selecteer alles

// 
// gzip_compression 
// 
$do_gzip_compress = FALSE; 
if($board_config['gzip_compress']) 
{ 
   $phpver = phpversion(); 

   if($phpver >= "4.0.4pl1") 
      { 
         if(extension_loaded("zlib")) 
      { 
   if (headers_sent() != TRUE) 
      { 
         $gz_possible = isset($HTTP_SERVER_VARS["HTTP_ACCEPT_ENCODING"]) && eregi("gzip, deflate",$HTTP_SERVER_VARS["HTTP_ACCEPT_ENCODING"]); 
         if ($gz_possible) 
         {
	 ob_end_clean();	 
         ob_start("ob_gzhandler"); 
         }
      } 
   } 
      } 
         else if($phpver > "4.0") 
      { 
         if(strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip')) 
         { 
            if(extension_loaded("zlib")) 
         { 
            $do_gzip_compress = TRUE; 
            ob_start(); 
            ob_implicit_flush(0); 

            header("Content-Encoding: gzip"); 
         } 
      } 
   } 
}  
Overigens gebruik ik de ob_end_clean(); i.v.m. wat zip-problemen die ik destijds had met Mozilla-based browsers.

Dus mijn vraag hier op het forum; waardoor wordt dan die snelheidswinst behaald????

Groeten,
Jan

Geplaatst: 17 apr 2005, 14:10
door Lontronics
Overigens is dit de link naar de mod: http://www.phpbbhacks.com/viewhack.php?id=119

Groeten,
Jan

Geplaatst: 19 apr 2005, 16:09
door Lontronics
Inmiddels draai ik de mod in zijn standaard uitvoering dus zonder de ob_end_clean();
Ik blijf echter met de vraag zitten waarom deze uitvoering sneller zou zijn dan het standaard script wat bij phpBB gebruikt wordt.
En het valt me eigenlijk tegen dat er schijnbaar niemand is die hier het antwoord op heeft....

Originele code van de fast and furious mod zoals ik hem nu dus ook gebruik:

Code: Selecteer alles

//
// gzip_compression
//
$do_gzip_compress = FALSE;
if($board_config['gzip_compress'])
{
   $phpver = phpversion();

   if($phpver >= "4.0.4pl1")
      {
         if(extension_loaded("zlib"))
      {
   if (headers_sent() != TRUE)
      {
         $gz_possible = isset($HTTP_SERVER_VARS["HTTP_ACCEPT_ENCODING"]) && eregi("gzip, deflate",$HTTP_SERVER_VARS["HTTP_ACCEPT_ENCODING"]);
         if ($gz_possible)  ob_start("ob_gzhandler");
      }
   }
      }
         else if($phpver > "4.0")
      {
         if(strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip'))
         {
            if(extension_loaded("zlib"))
         {
            $do_gzip_compress = TRUE;
            ob_start();
            ob_implicit_flush(0);

            header("Content-Encoding: gzip");
         }
      }
   }
}