我正在编写一个脚本,可以确定页面是否被压缩,我一直在做一些研究,无法弄清楚如何确定页面是否被压缩。我假设压缩的页面会在标题中有一些东西说它是一个压缩文件。像Content-Type或其他东西。
感谢任何帮助。
答案 0 :(得分:2)
实际上是Content-encoding
。根据压缩类型,压缩数据可能为gzip
(或x-gzip
),deflate
或compress
。
引用wikipedia:
HTTP / 1.1中的“内容编码”/“接受编码”和“传输编码”/“TE”标头允许客户端可选地接收压缩的HTTP响应和(不太常见)发送压缩的请求。 HTTP / 1.1(RFC 2616)的规范指定了三种压缩方法:“gzip”(RFC 1952;包含在gzip流中的内容),“deflate”(RFC 1950;包含在zlib格式的流中的内容),以及“压缩”(在RFC 2616第3.5节中解释为'由通用UNIX文件压缩程序产生的编码格式“compress”。这种格式是自适应Lempel-Ziv-Welch编码(LZW)。')。许多客户端库,浏览器和服务器平台(包括Apache和Microsoft IIS)都支持gzip。
答案 1 :(得分:0)
压缩页面将具有带压缩算法的Content-Encoding标头。
例如:
内容编码:gzip
答案 2 :(得分:-1)
接受gzip的http请求,然后分析收到的标头,并查找Content-Encoding:gzip
答案 3 :(得分:-1)
这是可以看到页面是否被压缩的网络浏览器。作为Web服务器,Apache在HTTP请求标头中找到Accept-Encoding: gzip,deflate
。如果它存在,它会压缩PHP脚本的HTML响应并相应地进行压缩。