Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用IIS禁用单个php文件的Gzip压缩_Php_Iis_Gzip - Fatal编程技术网

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

使用IIS禁用单个php文件的Gzip压缩,php,iis,gzip,Php,Iis,Gzip,我有一个在Internet上似乎不太常见的配置(带有IIS的PHP),到目前为止,由于这个原因,我还没有找到解决问题的方法 基本上,当我在php页面上发送手动404标题时: header('HTTP/1.0 404 Not Found'); 问题是我总是会遇到编码错误,我已经确定这与启用gzip有关 当我用--compressed卷曲时,我得到: HTTP/1.1 404 Not Found Cache-Control: no-store, no-cache, must-revalidate,

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

基本上,当我在php页面上发送手动404标题时:

header('HTTP/1.0 404 Not Found');
问题是我总是会遇到编码错误,我已经确定这与启用gzip有关

当我用--compressed卷曲时,我得到:

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');
?>


就这么简单

我的英雄!我看到很多东西说ini_set不适用于该设置,我想我只是相信它们,而没有实际尝试它…NP我很高兴它适用于您,就像输出压缩一样,在windows/php环境中,您会发现有很多东西是这样的。有些东西可以在1000个其他设置上工作,比如你的设置,但不能在你的设置上工作,反之亦然,你只需要使用试错法。windows IIS和PHP之间有成千上万的配置,它们甚至可以禁用/启用最基本的功能,让你发疯。