首頁 >後端開發 >php教程 >使用 php4 加速 web 傳輸_PHP教程

使用 php4 加速 web 傳輸_PHP教程

WBOY
WBOY原創
2016-07-21 16:01:40874瀏覽


/****************************************
** 標題...... ..: PHP4 HTTP 壓縮加速Web
** 版本.......: 1.10
** 作者........: catoc
* * 檔案名稱......:gzdoc.php
** 最後更改..:25/08/2000
** 要求...:PHP4 >= 4.0.1
** PHP配置為--with-zlib[=DIR]
** 注意......: 動態內容加速壓縮
** 動態傳輸資料
** 程式碼作者:sun jin hu (catoc)
** 自1998/1999 年以來,大多數較新的瀏覽器都
** 已配備支援HTTP 1.1
** 稱為「內容編碼」的標準。
** 本質上,瀏覽器向
** 伺服器表明它可以接受「內容編碼」
**,如果伺服器有能力,它將
** 壓縮資料並傳輸它。
** 瀏覽器對其進行解壓縮,然後呈現
** 頁面。
** 用法........:
** 第一個 '' 開頭之前沒有空格標籤。
** ------------文件開始----------
** |
** |包括('gzdoc.php' );
** | print "開始輸出!!";
** |?>
** |;
** |...頁...
** |;
** |
** | gzdocout();
** |?>
** ----------- --檔案結束---------
**************** ****************** *****/
ob_start();
ob_implicit_flush(0);
函數GetHeader(){
$headers = getallheaders();
while (list($header, $value) = every($headers)) {
$Message .= "$header: $value
n";
}
回傳$Message;
}
函數CheckCanGzip(){
全域$HTTP_ACCEPT_ENCODING, $PHP_SELF, $Wget, $REMOTE_ADDR, $S_UserName;
if (connection_timeout() || connection_aborted()); 🎜>}
if ((strpos('catoc'.$HTTP_ACCEPT_ENCODING, 'gzip')) || $Wget == 'Y'){
if (strpos('catoc'.$HTTP_ACCEPT_ENCODING, ' xCODING, ' xCODING, ' xCODING, ' xCODING, ' xCODING, ' xCODING, ' -gzip')){
$ENCODING = "x-gzip";
$Error_Msg = str_replace('
','',GetHeader());
$Error_Msg .= "時間: ".date("Y-m-d H:i:s")."n";
$Error_Msg .= "遠端位址: ".$REMOTE_ADDR."n";
//mail('your@none. 。 ;
}否則{
回傳0;
}
}
function GzDocOut(){
全域$PHP_SELF, $CatocGz, $REMOTE_ADDR, $S_User$PHP_SELF, $CatocGz, $REMOTE_ADDR, $S_User onh; = CheckCanGzip();
if ($ENCODING){
print "nn";
$Contents = ob_get_contents();
ob_end_clean() ;
if ($CatocGz == 'Y'){
print "不壓縮長度:".strlen($Contents)."
";
print "壓縮長度: ".strlen( gzcompress($Contents))."
";
退出;
}else{
header("內容編碼:$ENCODING");
}
列印包('cccccccc ',0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00);
$Size = strlen($Contents);
$Crc = crc32($Contents);$Contents);
$Crc = crc32($ents);$Contents); ($Contents);
$Contents = substr($Contents, 0, strlen($Contents) - 4);
列印$Contents;
列印包('V',$Crc);
列印包('V',$Size);
退出;
}其他{
ob_end_flush();
$Error_Msg = str_replace('
','',GetHeader() );
$Error_Msg .= "時間: ".date("Y-m-d H:i:s")."n";
$Error_Msg .= "遠端位址: ".$REMOTE_ADDR."n";
//mail('your@none.net', "使用者不能在檔案$PHP_SELF 中使用gzip 輸出!!!", $Error_Msg);
退出;
}
}
?>








http://www.bkjia.com/PHPjc/316766.html

www.bkjia.com

true

http: //www.bkjia.com/PHPjc/316766.htmlTechArticle? /*************************************** ** 標題....... ..: PHP4 HTTP 壓縮加速Web ** 版本.......: 1.10 ** 作者........: catoc catoc@163.net ** 檔案名稱....... .
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn