Nginx环境下PHP flush失效的解决方法


Posted in PHP onOctober 19, 2016

问题

我在一次调试PHP逐行输出时候,发现ob_flushflush两个都失效了,通过phpinfo基本能判断php.ini的设置是正常的。

解决方法

再去看Nginx,发现Nginx中,有如下的设置:

fastcgi_buffer_size 128k;
fastcgi_buffers 8 128k;

问题基本找到了,Nginx会缓冲PHP输出的信息,当达到128k时才会将缓冲区的数据发送给客户端,那么我们首先需要将这个缓冲区调小,比如:

fastcgi_buffer_size 4k;
fastcgi_buffers 8 4k;

并且,必须禁用gzip

gzip off;

然后,在php中,在ob_flushflush前,输出一段达到4k的内容,例如:

echo str_repeat(‘ ‘, 1024*4);

到此,PHP就可以正常通过ob_flushflush逐行输出需要的内容了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

PHP 相关文章推荐
PHP操作XML作为数据库的类
Dec 19 PHP
PHP判断图片格式的七种方法小结
Jun 03 PHP
php 生成短网址原理及代码
Jan 23 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
php图片水印添加、压缩、剪切的封装类实现
Apr 18 PHP
PHP简单判断字符串是否包含另一个字符串的方法
Mar 25 PHP
php使用正则验证中文
Apr 06 PHP
深入理解PHP之OpCode原理详解
Jun 01 PHP
php 无限分类 树形数据格式化代码
Oct 11 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
PHP检查网站是否宕机的方法示例
Jul 24 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
Jul 26 PHP
php封装的验证码工具类完整实例
Oct 19 #PHP
php封装的图片(缩略图)处理类完整实例
Oct 19 #PHP
php封装的表单验证类完整实例
Oct 19 #PHP
php魔术方法功能与用法实例分析
Oct 19 #PHP
php封装的smartyBC类完整实例
Oct 19 #PHP
php封装的smarty类完整实例
Oct 19 #PHP
PHP内存缓存功能memcached示例
Oct 19 #PHP
You might like
PHP加速 eAccelerator配置和使用指南
2009/06/05 PHP
php简单开启gzip压缩方法(zlib.output_compression)
2013/04/13 PHP
PHPMailer邮件发送的实现代码
2013/05/04 PHP
Yii使用ajax验证显示错误messagebox的解决方法
2014/12/03 PHP
php实现RSA加密类实例
2015/03/26 PHP
Zend Framework动作助手Json用法实例分析
2016/03/05 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
设定php简写功能的方法
2019/11/28 PHP
Nginx+php配置文件及原理解析
2020/12/09 PHP
Mozilla 表达式 __noSuchMethod__
2009/04/05 Javascript
JavaScript 未结束的字符串常量常见解决方法
2010/01/24 Javascript
xss文件页面内容读取(解决)
2010/11/28 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
2016/04/17 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
JS控制页面跳转时未请求要跳转的地址怎么回事
2016/10/14 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
基于JavaScript实现移动端无限加载分页
2017/03/27 Javascript
bmob js-sdk 在vue中的使用教程
2018/01/21 Javascript
JavaScript函数定义方法实例详解
2019/03/05 Javascript
vue2 中二级路由高亮问题及配置方法
2019/06/10 Javascript
[04:54]DOTA2 2017国际邀请赛:上届冠军WINGS采访短片
2017/08/09 DOTA
[04:46]2018年度玩家喜爱的电竞媒体-完美盛典
2018/12/16 DOTA
Python中的hypot()方法使用简介
2015/05/18 Python
详解python 发送邮件实例代码
2016/12/22 Python
python 批量添加的button 使用同一点击事件的方法
2019/07/17 Python
pycharm 中mark directory as exclude的用法详解
2020/02/14 Python
Django form表单与请求的生命周期步骤详解
2020/06/07 Python
canvas使用注意点总结
2013/07/19 HTML / CSS
美国第二大团购网站:LivingSocial
2016/07/24 全球购物
文秘大学生求职信
2014/02/25 职场文书
城市规划应届毕业生自荐信
2014/07/04 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
Win11黑色桌面背景怎么办?Win11黑色壁纸解决方法汇总
2022/04/05 数码科技
Java GUI编程菜单组件实例详解
2022/04/07 Java/Android