欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > WEB开发 > PHP >

Apache 和 PHP 怎样开启 gzip 压缩

发布时间:2016-11-23  编辑:杨雨个人博客网站   点击:   

网页开启 gzip 压缩往后,其体积可以减小 60%~90%,可以节减下大量的带宽与用户守候时刻,下图就是杨雨小我私人博客首页颠末 gzip 压缩之后的比例。因为网站的 CSS/JS/图片 等静态资源我们已经行使七牛举办 CDN 加快,而七牛已经实现了 gzip 压缩,以是假如网站的 PHP 天生的内容也可以实现 gzip 压缩,则整站即可实现 gzip 压缩。

gzip 压缩

下面我就从 Apache 处事器,PHP 等方面去讲授下怎样开启 gzip 压缩:

Apache 开启 gzip 压缩

起首确保你的 Apache 已经加载了 mod_deflate 模块,然后在 httpd.conf 代码中加载以下代码:

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/Html text/Css text/plain text/xml application/json application/x-httpd-php application/x-javascript
</IfModule>

假如你没有权限修改你的主机,你也可以将以上代码复制到网站根目次的 .htaccess 文件。

PHP 开启 gzip 压缩

假如修改 Apache httpd.conf 文件无效,则可以通过修改 PHP 的 php.ini 要领:

打开 PHP 目次下的 php.ini 文件,找到 zlib.output_compression = Off,改成 zlib.output_compression = On,再把 ;zlib.output_compression_level 前面的;去掉,后头的-1改成1~5的数值,这样便可以实现全部 PHP 页面的 gzip 结果。

假如无法修改 php.ini 文件,则可以在必要 gzip 压缩的 PHP 文件头部插手:


if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
	ob_start('ob_gzhandler'); 
}else{
	ob_start(); 
}

既可以实现该 php 页面 gzip 压缩。

WordPress 开启 gzip 压缩

假如修改 Apache httpd.conf 文件和 PHP 的 php.ini 文件的要领都无效,则将下面的代码复制到当前主题的 functions.php 文件中也可以实现 WordPress 整站 gzip 压缩:


add_action('init', 'wpjam_gzip_compression');
function wpjam_gzip_compression(){
	if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
		ob_start('ob_gzhandler'); 
	}else{
		ob_start(); 
	}
}

总结

颠末测试,回收处事器压缩要比行使 PHP 压缩要更快,并且压缩之后更小。以是最好的要领照旧直接让 Apache 直接举办 gzip 压缩。假如无法修改 Apache 的 httpd.conf 文件,再实行去修改 php.ini 文件,最终才是行使修改 php 文件以及 WordPress hook 的要领。

本文地址:http://itbyc.com/php/12998.html
转载请注明出处。
分享是一种快乐,也是一种美德:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1