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

php – 在Apache/Nginx设置中刷新输出缓冲区

发布时间:2020-12-13 21:30:10 所属栏目:Nginx 来源:网络整理
导读:我希望我正在开发的网页的页面内容在下载时显示在屏幕上.在我的测试/开发环境中,这可以使用PHP flush()命令按预期工作. 但是,我的生产设置(WPEngine)在Apache前面使用Nginx代理,而flush()不再起作用(也没有任何其他输出缓冲命令).当我想通过发送价值4k的空白

我希望我正在开发的网页的页面内容在下载时显示在屏幕上.在我的测试/开发环境中,这可以使用PHP flush()命令按预期工作.

但是,我的生产设置(WPEngine)在Apache前面使用Nginx代理,而flush()不再起作用(也没有任何其他输出缓冲命令).当我想通过发送价值4k的空白来刷新时,我已经能够通过故意填充缓冲区来获得所需的行为.

然而,这感觉就像一个黑客,并且有问题的页面需要刷新100次或更多次,因此这会为下载的总数据增加相当大的数量.

有没有办法通过发送控制字符和/或设置HTTP标头来向Nginx发送信号来刷新缓冲区(或根本不是缓冲区),这样我就可以避免发送其他不必要的空格了?

由于WPEngine是托管托管环境,因此我无法对服务器设置进行任何更改.因此,例如,通过向nginx服务器配置添加指令来关闭Nginx缓冲不是一种选择.

我目前这样做的方式如下: –

最佳答案
你应该在nginx中关闭缓冲:

proxy_buffering off;

参考:http://nginx.org/r/proxy_buffering

(编辑:李大同)

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

    推荐文章
      热点阅读