HTTP协议之Content-Encoding - 天下无贼 - 51CTO技术博客
HTTP协议之Content-Encoding - 天下无贼 - 51CTO技术博客
HTTP协议之Content-Encoding2011-09-17 12:04:37
标签:Gzip deflate 职场 休闲原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://guojuanjun.blog.51cto.com/277646/667067Content-Encoding是HTTP协议的响应报文头,一般形式如:
Content-Encoding:gzip,deflate,compress
Content-Encoding的说明中指出deflate指的是在RFC1950说明的zlib格式。也就是说当Content-Encoding为deflate时,内容应该为zlib格式。
compress具说chrome支持,但还没见到哪个web服务器支持
gzip,deflate,zlib的关系:
deflate(RFC1951):一种压缩算法,使用LZ77和哈弗曼进行编码;
zlib(RFC1950):一种格式,是对deflate进行了简单的封装;
gzip(RFC1952):一种格式,也是对deflate进行的封装.可以看出deflate是最核心的算法,而zlib和gzip格式的区别仅仅是头部和尾部不一样,而实际的内容都是deflate编码的,即:
gzip = gzip头(10字节) + deflate编码的实际内容 + gzip尾(8字节)[GZIP的实现可参考GzipOutputStream.java]
zlib = zlib头 + deflate编码的实际内容 + zlib尾访问www.163.com. 响应报文含有gzip头,而www.baidu.com的响应报文没有gzip头。
看到gzip大家都很好的支持,有无gzip头都没有问题。
(以下内容本人未做验证)
对deflate即zlib格式:
那么在IE上面是打不开页面的,包括IE6,IE7,IE8,提示为一片空白或者出错。但是在其他的浏览器如Firefox,Chrome,Opera等上面都能正常打开。要让IE能够正常打开页面,内容必须是deflate原始格式的数据,即去掉zlib头和zlib尾。不知道IE为什么不修改这个 Bug,按理说在IE6就出现的这种很简单的问题,IE8不应该出现才对。
为了照顾IE,只好在压缩deflate的时候去掉zlib头和zlib尾,还好其他的浏览器也都能正常处理这种原始的deflate格式。本文出自 “天下无贼” 博客,请务必保留此出处http://guojuanjun.blog.51cto.com/277646/667067
HTTP协议之Content-Encoding - 天下无贼 - 51CTO技术博客相关推荐
- python脚本监控网站状态 - 赵海华_运维之路 - 51CTO技术博客
python脚本监控网站状态 - 赵海华_运维之路 - 51CTO技术博客 python脚本监控网站状态 2013-01-09 09:21:02 标签:监控 python 原创作品,允许转载,转载时请 ...
- Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客
Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客 Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客 Maven问题总结 - 3 2010 ...
- (2006, 'MySQL server has gone away') 错误解决 - dba007的空间 - 51CTO技术博客
(2006, 'MySQL server has gone away') 错误解决 - dba007的空间 - 51CTO技术博客 (2006, 'MySQL server has gone away ...
- 有关网页抓取问题的一些经验总结 - passover【毕成功的博客】 - 51CTO技术博客
有关网页抓取问题的一些经验总结 - passover[毕成功的博客] - 51CTO技术博客 有关网页抓取问题的一些经验总结 2011-05-05 18:07:38 标签:爬虫 网页抓取 在写爬虫的时 ...
- HAproxy - 铁钉 - 51CTO技术博客
HAproxy - 铁钉 - 51CTO技术博客 HAproxy 2009-11-30 14:24:37 标签:HAproxy 休闲 职场 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出 ...
- 今天正式开通51CTO技术博客
今天正式开通51CTO技术博客,今后会把自己工作和学习过程中的点点滴滴记录在此博客中! 转载于:https://blog.51cto.com/dashuai/1160235
- 自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客
自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客 自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客 自动化运维工具Ansib ...
- CentOS 6.4下安装和配置Samba - 行知小筑 - 51CTO技术博客
CentOS 6.4下安装和配置Samba - 行知小筑 - 51CTO技术博客
- Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记 - passover【毕成功的博客】 - 51CTO技术博客...
Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记 - passover[毕成功的博客] - 51CTO技术博客
- 51CTO移动客户端可以在线下载安装啦 - 51CTO博客开发 - 51CTO技术博客
51CTO移动客户端可以在线下载安装啦 - 51CTO博客开发 - 51CTO技术博客 51CTO移动客户端可以在线下载安装啦 - 51CTO博客开发 - 51CTO技术博客 51CTO移动客户端可以 ...
最新文章
- GitHub与Git入门
- Mestasploit 客户端渗透
- [Github]watch和star的区别
- 爱数的诗和远方:云端数据运营服务
- 微软向马斯克的人工智能项目OpenAI投资10亿美元
- 两者相差百分比怎么算_相差200元!小米11和iQOO 7谁更值得买?说说真实想法
- [JavaWeb-JDBC]JDBC_快速入门_idea jdbc连接Mysql数据库
- js转json工具_菜鸟丨Egert3D微信小游戏发布与Unity工具使用
- 专业音频如何把电平转换成dbu_谭俊峰|录课、买麦,你应该了解的音频常识
- 今天的解放过后的蜡笔小新
- CSS样式之内容居中方法
- ORACLE时间常用函数(字段取年、月、日、季度)
- vscode-设置tab转空格数4为2
- 安徽大学836数字电路与逻辑设计考研历年真题库资料
- 漏洞挖掘 符号执行_漏洞挖掘综述
- MT6577/MT6589处理器参数对比分析
- java 多余的空格_Java去除字符串多余空格以及首尾空格
- WC2015简短感想
- 一年期早过:Windows 10免费升级漏洞仍然敞开着
- 各大网站瀑布流简析与建议
热门文章
- mysql 如何抓慢查询_如何进行 MySQL慢查询 操作
- java sql注入 过滤器_java 过滤器filter防sql注入 | 学步园
- php mysql占位符_php中的占位符
- Linux内核中的延时函数
- 分析arm Internal error: synchronous external abort: 96000010 [#1] PREEMPT SMP
- matlab cat函数_MATLAB的Categorical数组
- InstantiationException in hadoop map reduce program
- 唯一分解定理 详解(C++)
- pycharm python脚本如何调试_Pycharm调试程序技巧小结
- python初级工程师面试题_Python工程师面试题