Heim  >  Artikel  >  Backend-Entwicklung  >  Beschleunigen Sie Webübertragungen mit PHP4

Beschleunigen Sie Webübertragungen mit PHP4

WBOY
WBOYOriginal
2016-08-08 09:34:14900Durchsuche

/***************************************
** Titel.........: php4 HTTP ComPRession beschleunigt das Web
** Version.......: 1.10
** Autor.......: catoc
** Dateiname......: gzdoc.php
** Letzte Änderung: 25.08.2000
** Anforderungen...: PHP4 >= 4.0.1
** PHP wurde mit --with-zlib[=DIR]
konfiguriert ** Hinweise.........: Dynamic Content Acceleration komprimiert
** die Datenübertragungsdaten im laufenden Betrieb
** Code von Sun Jin Hu (Catoc)
** Die meisten neueren Browser seit 1998/1999 verfügen über
** wurde für die Unterstützung von HTTP 1.1 ausgestattet
** Standard, bekannt als „Content-Encoding“.
** Im Wesentlichen zeigt der Browser das
an ** Server, der „Content Encoding“ akzeptieren kann
** und wenn der Server dazu in der Lage ist, dann
** Komprimieren Sie die Daten und übertragen Sie sie. Das
** Der Browser dekomprimiert es und rendert dann
** die Seite.
** Verwendung.......:
** Kein Leerzeichen vor dem Anfang des ersten ' ** ------------Anfang der Datei----------
** | ** | include('gzdoc.php');
** | print „Ausgabe starten!!“;
** |?>
** |
** |... die Seite ...
** |
** | ** | gzdocout();
** |?>
** -------------Ende der Datei-----------
*************************************/
ob_start();
ob_implicit_flush(0);
Funktion GetHeader(){
$headers = getallheaders();
while (list($header, $value) = every($headers)) {
$Message .= "$header: $value
n";
}
return $Message;
}
Funktion CheckCanGzip(){
global $HTTP_ACCEPT_ENCODING, $PHP_SELF, $Wget, $REMOTE_ADDR, $S_UserName;
if (connection_timeout() || Connection_aborted()){
0 zurückgeben;
}
if ((strpos('catoc'.$HTTP_ACCEPT_ENCODING, 'gzip')) || $Wget == 'Y'){
if (strpos('catoc'.$HTTP_ACCEPT_ENCODING, 'x-gzip')){
$ENCODING = "x-gzip";
$Error_Msg = str_replace('
','',GetHeader());
$Error_Msg .= "Zeit: ".date("Y-m-d H:i:s")."n";
$Error_Msg .= "Remote-Adresse: ".$REMOTE_ADDR."n";
//mail('your@none.net', "Benutzer haben x-gzip-Ausgabe in der Datei $PHP_SELF!!!", $Error_Msg);
}else{
$ENCODING = "gzip";
}
return $ENCODING;
}else{
0 zurückgeben;
}
}
Funktion GzDocOut(){
global $PHP_SELF, $CatocGz, $REMOTE_ADDR, $S_UserName;
$ENCODING = CheckCanGzip();
if ($ENCODING){
print "nn verwenden";
$Contents = ob_get_contents();
ob_end_clean();
if ($CatocGz == 'Y'){
print „Länge nicht komprimieren: „.strlen($Contents).“
“;
print „Komprimierte Länge: „.strlen(gzcompress($Contents)).“
“;
Ausfahrt;
}else{
header("Content-Encoding: $ENCODING");
}
print pack('cccccccc',0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00);
$Size = strlen($Contents);
$Crc = crc32($Contents);
$Contents = gzcompress($Contents);
$Contents = substr($Contents, 0, strlen($Contents) - 4);
$Contents drucken;
print pack('V',$Crc);
print pack('V',$Size);
Ausfahrt;
}else{
ob_end_flush();
$Error_Msg = str_replace('
','',GetHeader());
$Error_Msg .= "Zeit: ".date("Y-m-d H:i:s")."n";
$Error_Msg .= "Remote-Adresse: ".$REMOTE_ADDR."n";
//mail('your@none.net', "Benutzer kann die gzip-Ausgabe in der Datei $PHP_SELF nicht verwenden!!!", $Error_Msg);
Ausfahrt;
}
}
?>




以上就介绍了使用 php4 加速 web 传输  🎜>

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn