php進行壓縮 ob_gzhandler函數有3種方法

來源:互聯網
上載者:User

使用ob_gzhandler函數有3種方法讓它對php進行壓縮:

1、在php.ini中設定output_handler = ob_gzhandler
2、在.htaccess中加入php_value output_handler ob_gzhandler
3、在php檔案頭加上ob_start(‘ob_gzhandler’);

第一種我們是沒法辦到,第二種方法不錯,可以一勞永逸,一、二種方法效果都一樣,就是對所有php尾碼檔案進行壓縮。我這裡主要介紹一下第三種方法,
就是試用CSS壓縮法 例如對模板下的style.css進行壓縮

1、把模板目錄下的style.css複製一份出來,命名為style.css.php

接著在style.css.php頂部加入這句:

 

 代碼如下 複製代碼
 <?php if(extension_loaded('zlib')) {ob_start('ob_gzhandler');} header("Content-type: text/css"); ?>

在最後加上

 

 代碼如下 複製代碼
 <?php if(extension_loaded('zlib')) {ob_end_flush();} ?>

2、按照下面的方式修改header.php中的css串連

原來的:

 代碼如下 複製代碼


 <link rel="stylesheet" type="text/css" media="screen" href="/style.css"/>

修改後的:

 代碼如下 複製代碼


 <link rel="stylesheet" type="text/css" media="screen" href="/style.css.php"/>

搞定,現在你的CSS就可以被gzip壓縮了。

JS也可以使用同樣的方法,只是在xx.js.php頭部加入的應該是這樣:

 

 代碼如下 複製代碼
 <?php if ( extension_loaded('zlib') ) {ob_start('ob_gzhandler');} header("Content-Type: text/java script"); ?>

(複製的時候去掉?php前的空格)

仔細看看K2主題的中的JS,就是修改尾碼為php後在頂部加入了ob_gzhandler函數。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.