问题

当我调试PHP上的一行行,我发现这两个ob_flush冲洗无效,而且php.ini设置正常的phpinfo。

解决方法

再看看Nginx发现Nginx,有以下设置:


fastcgi_buffer_size 128k;
8 128k fastcgi_buffers;


基本上找到了这个问题。Nginx缓存PHP的输出信息。当我们达到128k,我们将发送缓冲区的数据到客户端。然后,我们首先需要减少缓冲区,例如:


fastcgi_buffer_size 4k;
fastcgi_buffers 8 4K;


你必须禁用GZIP


gzip了;


然后,在PHP中,前ob_flush和冲洗,输出一段内容4K,例如:


回声str_repeat('',1024 * 4);


在这种情况下,PHP可以正常输出所需的内容,通过一行行的ob_flush冲洗。

总结

以上就是本文的全部内容。希望本文的内容能给大家的学习或工作带来一定的帮助。如果有任何疑问,你可以留言。