php - 使用 IIS 禁用单个 php 文件的 Gzip 压缩

标签 php iis gzip

我有一个在 Internet 上似乎不太常见的配置(带有 IIS 的 PHP),因此到目前为止我还没有找到解决我的问题的方法。

基本上当我在我的 php 页面上发送手动 404 header 时:

header('HTTP/1.0 404 Not Found');

问题是我总是遇到编码错误,我确定这与启用 gzip 有关。

当我使用 --compressed 进行 curl 时,我得到:

HTTP/1.1 404 Not Found
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 3560
Content-Type: text/html
Content-Encoding: gzip
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Vary: Accept-Encoding
Server: Microsoft-IIS/6.0
Set-Cookie: PHPSESSID=b0ueqhtc3o4p7m2luqss170fr3; path=/
Date: Mon, 11 Jul 2011 16:15:40 GMT

curl: (61) Error while processing content unencoding: invalid code lengths set

是否可以仅针对这一页禁用压缩?还是我缺少其他解决方案?我不想对整个站点禁用压缩。

最佳答案

这很简单,只需像这样使用 ini 集:

<?php 
    if(ini_get('zlib.output_compression')){ 
        ini_set('zlib.output_compression', 'Off'); 
    }
    header('HTTP/1.0 404 Not Found');
?>

就这么简单。

关于php - 使用 IIS 禁用单个 php 文件的 Gzip 压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6653940/

相关文章:

php - Facebook PHP-SDK getUser() 始终返回 0

php - Symfony2 : dynamic generation of embedded form

php - 我想打印带参数的 PHP 查询

ssl - 如何在 IIS 上使用自签名证书在本地主机上配置 SSL?

iis-7 - IIS7 GZIP 压缩 - http压缩部分

PHP & CSS - 导航栏不突出显示当前选项卡

asp.net - 配置IIS客户端证书映射认证

http - 如何使用 IIS 通过 HTTP 隧道传输多人游戏数据以最大程度地减少延迟?

Gzip 的 JavaScript 实现

php - 无法使用 cURL PHP 解码 gzip