欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IIS6.0 開(kāi)啟Gzip方法及PHP Gzip函數(shù)分享

 更新時(shí)間:2014年06月08日 09:10:31   作者:  
因?yàn)樵谧鲆粋€(gè)項(xiàng)目,項(xiàng)目里面服務(wù)器主要提供數(shù)據(jù),但是數(shù)據(jù)多了文件就大了,比較浪費(fèi)流量和時(shí)間,我們便用Gzip來(lái)處理。我在本機(jī)上是apache,服務(wù)器上是IIS6.0,用的是php,那么我就在這里分享一下。

IIS 的 GZIP 壓縮                                                                       

1.首先備份 IIS 的配置文件, 復(fù)制 C:\Windows\system32\inetsrv\metabase.xml到另外的備份文件夾中.   C:\Windows\system32\inetsrv\metabase.xml是 IIS 的核心配置文件,該文件的完整性一但被破壞,IIS 將無(wú)法正常運(yùn)行,嚴(yán)重到需要重新安裝系統(tǒng).

2. 在開(kāi)始菜單中啟動(dòng) Internet 信息服務(wù)(IIS)管理器,右鍵點(diǎn)擊“網(wǎng)站”屬性,打開(kāi)“服務(wù)”選項(xiàng)卡,勾選“HTTP 壓縮”的兩個(gè)選項(xiàng)?!芭R時(shí)目錄”和“臨時(shí)目錄最大容量”可根據(jù)需要自行設(shè)置。設(shè)置完成后點(diǎn)擊確定。

3. 右鍵點(diǎn)擊“網(wǎng)站”下方的 “Web服務(wù)擴(kuò)展”,添加一個(gè)新的Web服務(wù)擴(kuò)展,擴(kuò)展名填寫(xiě)為“HTTP Compression”或其他,都可以。“要求的文件”添加:c:\windows\system32\inetsrv\gzip.dll ,并勾選“設(shè)置擴(kuò)展?fàn)顟B(tài)為允許”,完成后點(diǎn)擊確定。

4.下面的步驟有些復(fù)雜,如果沒(méi)有確定的把握能理解,最好不要嘗試,右鍵點(diǎn)擊“Internet 信息服務(wù)的”“本地計(jì)算機(jī)”屬性,勾選“允許直接編輯配置數(shù)據(jù)庫(kù)”并確定。

5. 在開(kāi)始菜單中運(yùn)行 notepad C:\Windows\system32\inetsrv\metabase.xml ,打開(kāi)metabase.xml 文件,請(qǐng)?jiān)谌魏胃膭?dòng)前再次確認(rèn)該文件已經(jīng)備份。

6. 用文本編輯器打開(kāi)metabase.xml ,用查找功能找到“IIsCompressionScheme”,共有3處,都在一起,分別是deflate、gzip和Parameters,deflate也是一種壓縮格式,不過(guò)性能上不如gzip。需要修改的是deflate和gzip這兩段,參數(shù)基本一樣,都要修改。

HcDynamicCompressionLevel是用來(lái)設(shè)置壓縮率,默認(rèn)是0,最高是10。低壓縮級(jí)別生成稍大一些的壓縮文件,但對(duì) CPU 和內(nèi)存資源的總體影響較小。高壓縮級(jí)別通常會(huì)生成較小的壓縮文件,但會(huì)占用較多的 CPU 時(shí)間和內(nèi)存。有人說(shuō)設(shè)置成9性價(jià)比最高。

HcFileExtensions是用來(lái)設(shè)置壓縮的靜態(tài)文件擴(kuò)展名,默認(rèn)是htm、html、txt,根據(jù)網(wǎng)站的自身情況添加擴(kuò)展名,最基本的是js、css。添加時(shí)注意原有的換行格式。

HcScriptFileExtensions是用來(lái)設(shè)置壓縮的動(dòng)態(tài)文件擴(kuò)展名,默認(rèn)是asp、dll和exe,根據(jù)需要自行添加擴(kuò)展名,無(wú)外乎aspx、php等??梢詫⑦@一項(xiàng)的默認(rèn)刪除留空,這樣所有的動(dòng)態(tài)響應(yīng)都以壓縮方式發(fā)送。另外,還將動(dòng)態(tài)壓縮 HcFileExtensions 中所有未指定的靜態(tài)文件類型,并且因此不將它們放入緩存。同樣地,必須將 HcDoDynamicCompression 設(shè)置為 true,以進(jìn)行動(dòng)態(tài)壓縮。

PHP Gzip 

復(fù)制代碼 代碼如下:

/*
* 壓縮數(shù)據(jù)
*/
public static function ob_gzip($content) // $content 就是要壓縮的頁(yè)面內(nèi)容,或者說(shuō)餅干原料
{  
    if(    !headers_sent() && // 如果頁(yè)面頭部信息還沒(méi)有輸出
        extension_loaded("zlib") && // 而且zlib擴(kuò)展已經(jīng)加載到PHP中
        strstr($_SERVER["HTTP_ACCEPT_ENCODING"],"gzip")) //而且瀏覽器說(shuō)它可以接受GZIP的頁(yè)面
    {
        $content = gzencode($content." OK",9); //此頁(yè)已壓縮”的注釋標(biāo)簽,然后用zlib提供的gzencode()函數(shù)執(zhí)行級(jí)別為9的壓縮,這個(gè)參數(shù)值范圍是0-9,0表示無(wú)壓縮,9表示最大壓縮,當(dāng)然壓縮程度越高越費(fèi)CPU。

        //然后用header()函數(shù)給瀏覽器發(fā)送一些頭部信息,告訴瀏覽器這個(gè)頁(yè)面已經(jīng)用GZIP壓縮過(guò)了!
        header("Content-Encoding: gzip");
        header("Vary: Accept-Encoding");
        header("Content-Length: ".strlen($content));
    }
        return $content; //返回壓縮的內(nèi)容,或者說(shuō)把壓縮好的餅干送回工作臺(tái)。
}

相關(guān)文章

最新評(píng)論