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面向对象
Feb 22 PHP
PHP向浏览器输出内容的4个函数总结
Nov 17 PHP
PHP 获取ip地址代码汇总
Jul 05 PHP
WampServer搭建php环境时遇到的问题汇总
Jul 23 PHP
在openSUSE42.1下编译安装PHP7 的方法
Dec 24 PHP
CI框架的安全性分析
May 18 PHP
PHP入门教程之自定义函数用法详解(创建,调用,变量,参数,返回值等)
Sep 11 PHP
PHP三种方式实现链式操作详解
Jan 21 PHP
php传值方式和ajax的验证功能
Mar 27 PHP
ThinkPHP实现生成和校验验证码功能
Apr 28 PHP
PHP中递归的实现实例详解
Nov 14 PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 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
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
2010/02/16 PHP
用PHP ob_start()控制浏览器cache、生成html实现代码
2010/02/16 PHP
关于更改Zend Studio/Eclipse代码风格主题的介绍
2013/06/23 PHP
JS随机生成不重复数据的实例方法
2013/07/17 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
jQuery通过Ajax返回JSON数据
2015/04/28 Javascript
理解javascript中的原型和原型链
2015/07/30 Javascript
利用JS实现点击按钮后图片自动切换的简单方法
2016/10/24 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
koa+jwt实现token验证与刷新功能
2019/05/30 Javascript
基于JavaScript获取url参数2种方法
2020/04/17 Javascript
jQuery是用来干什么的 jquery其实就是一个js框架
2021/02/04 jQuery
win与linux系统中python requests 安装
2016/12/04 Python
Python实现的爬虫功能代码
2017/06/24 Python
基于python 处理中文路径的终极解决方法
2018/04/12 Python
详解Python3中setuptools、Pip安装教程
2019/06/18 Python
PIL图像处理模块paste方法简单使用详解
2019/07/17 Python
python 基于dlib库的人脸检测的实现
2019/11/08 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
解决Pycharm的项目目录突然消失的问题
2020/01/20 Python
python 给图像添加透明度(alpha通道)
2020/04/09 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
2020/04/10 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
家长会演讲稿范文
2014/01/10 职场文书
2014年两会学习心得范例
2014/03/17 职场文书
二年级学生评语大全
2014/04/23 职场文书
优秀护士先进事迹
2014/05/08 职场文书
自动化专业大学生职业生涯规划范文:爱拚才会赢
2014/09/12 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
出国留学英文自荐信
2015/03/25 职场文书
教师节倡议书2015
2015/04/27 职场文书
CSS的class与id常用的命名规则
2021/05/18 HTML / CSS
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电
基于Apache Hudi在Google云构建数据湖平台的思路详解
2022/04/07 Servers