加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

如何从PHP禁用nginx gzip?

发布时间:2020-12-13 20:59:31 所属栏目:Nginx 来源:网络整理
导读:我打算阻止nginx从gzip压缩单个PHP请求.我已经有以下内容: @ini_set('zlib.output_compression','Off'); @ini_set('implicit_flush',1); header('X-Accel-Buffering: no'); 根据我发现的所有信息,仅X-Accel-Buffering应当禁用gzip,但是当我从浏览器加载此页

我打算阻止nginx从gzip压缩单个PHP请求.我已经有以下内容:

    @ini_set('zlib.output_compression','Off');
    @ini_set('implicit_flush',1);
    header('X-Accel-Buffering: no');

根据我发现的所有信息,仅X-Accel-Buffering应当禁用gzip,但是当我从浏览器加载此页面时,仍然可以看到标题:

Content-Encoding:gzip

我正在使用php7-fpm,nginx 1.10.1,debian8

编辑:

我使用sleep()进行了测试以延迟输出.看起来像header(‘X-Accel-Buffering:no’);是有效的,但是它只能防止缓冲而不是gziping.我猜gzipping正在某种程度上作为流工作.

我可以看到,如果我输出1,000个字节,并在每个回显语句(每个字符有1个字符)上循环,则浏览器将收到大约11kb的字节.如果我回显str_rep x 1000,则发送的数据少得多.那里一定有一些开销.

无论如何,我都需要禁用gzip以便发送大量内容并测量下载时间.如果压缩了,我不知道实际的吞吐量是多少.

最佳答案
如果在答案中找到Content-Encoding标头,则Nginx将不会运行gzip过滤器.因此,您可以在后端设置Content-Encoding:Identity头,nginx会将其传递给客户端,而无需进行gzip处理.身份表示“未编码”.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读