IIS6.0 开启Gzip方法及PHP Gzip函数分享


Posted in PHP onJune 08, 2014

IIS 的 GZIP 压缩                                                                       

1.首先备份 IIS 的配置文件, 复制 C:\Windows\system32\inetsrv\metabase.xml到另外的备份文件夹中.   C:\Windows\system32\inetsrv\metabase.xml是 IIS 的核心配置文件,该文件的完整性一但被破坏,IIS 将无法正常运行,严重到需要重新安装系统.

2. 在开始菜单中启动 Internet 信息服务(IIS)管理器,右键点击“网站”属性,打开“服务”选项卡,勾选“HTTP 压缩”的两个选项。“临时目录”和“临时目录最大容量”可根据需要自行设置。设置完成后点击确定。

3. 右键点击“网站”下方的 “Web服务扩展”,添加一个新的Web服务扩展,扩展名填写为“HTTP Compression”或其他,都可以。“要求的文件”添加:c:\windows\system32\inetsrv\gzip.dll ,并勾选“设置扩展状态为允许”,完成后点击确定。

4.下面的步骤有些复杂,如果没有确定的把握能理解,最好不要尝试,右键点击“Internet 信息服务的”“本地计算机”属性,勾选“允许直接编辑配置数据库”并确定。

5. 在开始菜单中运行 notepad C:\Windows\system32\inetsrv\metabase.xml ,打开metabase.xml 文件,请在任何改动前再次确认该文件已经备份。

6. 用文本编辑器打开metabase.xml ,用查找功能找到“IIsCompressionScheme”,共有3处,都在一起,分别是deflate、gzip和Parameters,deflate也是一种压缩格式,不过性能上不如gzip。需要修改的是deflate和gzip这两段,参数基本一样,都要修改。

HcDynamicCompressionLevel是用来设置压缩率,默认是0,最高是10。低压缩级别生成稍大一些的压缩文件,但对 CPU 和内存资源的总体影响较小。高压缩级别通常会生成较小的压缩文件,但会占用较多的 CPU 时间和内存。有人说设置成9性价比最高。

HcFileExtensions是用来设置压缩的静态文件扩展名,默认是htm、html、txt,根据网站的自身情况添加扩展名,最基本的是js、css。添加时注意原有的换行格式。

HcScriptFileExtensions是用来设置压缩的动态文件扩展名,默认是asp、dll和exe,根据需要自行添加扩展名,无外乎aspx、php等。可以将这一项的默认删除留空,这样所有的动态响应都以压缩方式发送。另外,还将动态压缩 HcFileExtensions 中所有未指定的静态文件类型,并且因此不将它们放入缓存。同样地,必须将 HcDoDynamicCompression 设置为 true,以进行动态压缩。

PHP Gzip 

/*
* 压缩数据
*/
public static function ob_gzip($content) // $content 就是要压缩的页面内容,或者说饼干原料
{   
    if(    !headers_sent() && // 如果页面头部信息还没有输出
        extension_loaded("zlib") && // 而且zlib扩展已经加载到PHP中
        strstr($_SERVER["HTTP_ACCEPT_ENCODING"],"gzip")) //而且浏览器说它可以接受GZIP的页面 
    {
        $content = gzencode($content." OK",9); //此页已压缩”的注释标签,然后用zlib提供的gzencode()函数执行级别为9的压缩,这个参数值范围是0-9,0表示无压缩,9表示最大压缩,当然压缩程度越高越费CPU。        //然后用header()函数给浏览器发送一些头部信息,告诉浏览器这个页面已经用GZIP压缩过了!
        header("Content-Encoding: gzip"); 
        header("Vary: Accept-Encoding");
        header("Content-Length: ".strlen($content));
    }
        return $content; //返回压缩的内容,或者说把压缩好的饼干送回工作台。
}
PHP 相关文章推荐
不用mod_rewrite直接用php实现伪静态化页面代码
Oct 04 PHP
一步一步学习PHP(7) php 字符串相关应用
Mar 05 PHP
C#静态方法与非静态方法实例分析
Sep 22 PHP
PHP针对JSON操作实例分析
Jan 12 PHP
PHP实现通过Luhn算法校验信用卡卡号是否有效
Mar 23 PHP
PHP代码优化技巧小结
Sep 29 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
Apr 01 PHP
ThinkPHP中create()方法自动验证表单信息
Apr 28 PHP
彻底搞懂PHP 变量结构体
Oct 11 PHP
PHP生成加减算法方式的验证码实例
Mar 12 PHP
深入学习微信网址链接解封的防封原理visit_type
Aug 15 PHP
laravel利用中间件做防非法登录和权限控制示例
Oct 21 PHP
PHP获取中英混合字符串长度的方法
Jun 07 #PHP
使用PHP破解防盗链图片的一个简单方法
Jun 07 #PHP
PHP防止post重复提交数据的简单例子
Jun 07 #PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
Jun 06 #PHP
php 判断网页是否是utf8编码的方法
Jun 06 #PHP
PHP实现的博客欢迎提示功能(很特别哦)
Jun 05 #PHP
php中数字0和空值的区别分析
Jun 05 #PHP
You might like
PHP简单判断iPhone、iPad、Android及PC设备的方法
2016/10/11 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
js操作checkbox遇到的问题解决
2013/06/29 Javascript
可简单避免的三个JS发布错误的详细介绍
2013/08/02 Javascript
解析JavaScript中点号“.”的多义性
2013/12/02 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
javascript实现tab切换特效
2015/11/12 Javascript
JavaScript中的闭包
2016/02/24 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
Express系列之multer上传的使用
2017/10/27 Javascript
node express使用HTML模板的方法示例
2019/08/22 Javascript
微信小程序实现图片压缩
2019/12/03 Javascript
原生JS实现汇率转换功能代码实例
2020/05/13 Javascript
解决vue-router路由拦截造成死循环问题
2020/08/05 Javascript
Vue使用screenfull实现全屏效果
2020/09/17 Javascript
Pyramid Mako模板引入helper对象的步骤方法
2013/11/27 Python
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
2017/11/29 Python
Python 中使用 PyMySQL模块操作数据库的方法
2019/11/10 Python
python错误调试及单元文档测试过程解析
2019/12/19 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
2020/02/21 Python
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
美国职棒大联盟官方网上商店:MLBShop.com
2017/11/12 全球购物
德国婴儿服装和婴儿用品购买网站:Baby Sweets
2019/12/08 全球购物
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
毕业生简历自我评价范文
2014/04/09 职场文书
汽车技术服务与贸易专业求职信
2014/07/20 职场文书
2014年团支部年度工作总结
2014/12/24 职场文书
创卫工作总结2015
2015/04/22 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
2019年健身俱乐部的创业计划书
2019/08/26 职场文书
创业计划书之美容店
2019/09/16 职场文书