ThinkPHP3.1新特性之对页面压缩输出的支持


Posted in PHP onJune 19, 2014

目前大多数浏览器都已经支持页面的压缩输出,通过压缩输出,页面大小可以减少30%,但是由于3.0及以前的版本都没有内置页面压缩输出功能,所以一般来说,开发人员需要自己在入口文件中添加:

ob_start('ob_gzhandler');

但是由于服务器环境的不同,有时候这个配置会和php.ini文件中的zlib压缩配置冲突。而ThinkPHP3.1版则内置了页面压缩输出的功能,不再需要再手动添加ob_gzhandler代码,增加OUTPUT_ENCODE配置参数,并支持检测zlib.output_compression。

框架默认会进行页面压缩输出,并且会自动检测zlib.output_compression配置,如果php.ini里面zlib.output_compression是开启状态,则仍然以服务器环境的页面压缩方式进行页面压缩。

相关代码只有一行:

if(!ini_get('zlib.output_compression') && C('OUTPUT_ENCODE')) ob_start('ob_gzhandler');

在个别特殊的环境下面,如果出现类似下面的错误提示:

output_handler "ob_gzhandler" conflicts with "zlib.output_compression"

一般是由于你的服务器配置了其他的压缩方式导致冲突,这个时候你可以手动关闭OUTPUT_ENCODE,即:

'OUTPUT_ENCODE'=>false

就可以解决问题。

PHP 相关文章推荐
生成静态页面的PHP类
Jul 15 PHP
使用PHP维护文件系统
Oct 09 PHP
PHP 5.3新特性命名空间规则解析及高级功能
Mar 11 PHP
PHP 第二节 数据类型之数组
Apr 28 PHP
Php中文件下载功能实现超详细流程分析
Jun 13 PHP
ThinkPHP中关联查询实例
Dec 02 PHP
php检查字符串中是否有外链的方法
Jul 29 PHP
php实现分页显示
Nov 03 PHP
yii使用activeFileField控件实现上传文件与图片的方法
Dec 28 PHP
thinkphp实现图片上传功能
Jan 13 PHP
PHP之图片上传类实例代码(加了缩略图)
Jun 30 PHP
CentOS 上搭建 PHP7 开发测试环境
Feb 26 PHP
ThinkPHP3.1新特性之多数据库操作更加完善
Jun 19 #PHP
ThinkPHP3.1新特性之G方法的使用
Jun 19 #PHP
ThinkPHP3.1新特性之查询条件预处理简介
Jun 19 #PHP
ThinkPHP3.1新特性之字段合法性检测详解
Jun 19 #PHP
ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
Jun 19 #PHP
ThinkPHP的Widget扩展实例
Jun 19 #PHP
ThinkPHP3.1的Widget新用法
Jun 19 #PHP
You might like
抓取并下载CSS中所有图片文件的php代码
2011/09/26 PHP
php中jQuery插件autocomplate的简单使用笔记
2012/06/14 PHP
php使用指定字符列表生成随机字符串的方法
2015/04/18 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
2015/10/22 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
用js实现预览待上传的本地图片
2007/03/15 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
2013/12/11 Javascript
nodejs 实现模拟form表单上传文件
2014/07/14 NodeJs
Javascript核心读书有感之类型、值和变量
2015/02/11 Javascript
javascript实现点击商品列表checkbox实时统计金额的方法
2015/05/15 Javascript
JS+CSS实现的简单折叠展开多级菜单效果
2015/09/12 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
原生JS实现网络彩票投注效果
2016/09/25 Javascript
Vue结合原生js实现自定义组件自动生成示例
2017/01/21 Javascript
jQuery+vue.js实现的九宫格拼图游戏完整实例【附源码下载】
2017/09/12 jQuery
在Vue项目中引入腾讯验证码服务的教程
2018/04/03 Javascript
在axios中使用params传参的时候传入数组的方法
2018/09/25 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
vue使用自定义事件的表单输入组件用法详解【日期组件与货币组件】
2020/06/01 Javascript
解决vue2中使用elementUi打包报错的问题
2020/09/22 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
Python实现把utf-8格式的文件转换成gbk格式的文件
2015/01/22 Python
python实现比较两段文本不同之处的方法
2015/05/30 Python
python读取txt文件并取其某一列数据的示例
2019/02/19 Python
python实现贪吃蛇双人大战
2020/04/18 Python
keras中的loss、optimizer、metrics用法
2020/06/15 Python
Python日志打印里logging.getLogger源码分析详解
2021/01/17 Python
美国现代家具购物网站:LexMod
2019/01/09 全球购物
幼儿园教研活动方案
2014/01/19 职场文书
2014年公司庆元旦活动方案
2014/03/05 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
医学专业毕业生求职信
2014/06/20 职场文书
学生意外伤害赔偿协议书
2014/09/17 职场文书
2014年维修工作总结
2014/11/22 职场文书
房贷收入证明范本
2015/06/12 职场文书
安全教育主题班会总结
2015/08/14 职场文书