網頁啟用GZIP壓縮,或多或少有助于提高網站性能。
那么,thinkphp怎么啟用GZIP壓縮呢?
有的人說在公共的 Action 里重寫 display 函數即可(注意:這種方法其實是比較笨的)
protected function display($templateFile='',$charset='',$contentType='text/html'){
if (extension_loaded('zlib') && strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
ini_set('zlib.output_compression', 'On');
ini_set('zlib.output_compression_level',3);
ob_start('ob_gzhandler');
parent::display($templateFile,$charset,$contentType);
ob_end_flush();
}else {
parent::display($templateFile,$charset,$contentType);
}
}
從上面的代碼來看,其實在thinkphp的入口文件加上這兩句就行了,不用那么麻煩
//開啟壓縮
define( "GZIP_ENABLE", function_exists ( 'ob_gzhandler') );
ob_start( GZIP_ENABLE ? 'ob_gzhandler': null );
更多優化方面的技術帖,請關注天津網站建設 天津文率科技的官方網站 www.64509.cn