【发布时间】:2019-06-19 04:47:54
【问题描述】:
当使用 php-mod 和 fastcgi 时,代码执行完美,每秒我都会得到一个输出,但切换到 php-fpm 代码会延迟几秒钟,然后根据输出大小输出
尝试了以下和组合 在 php ini 中设置输出缓冲区 0 ob_implicit_flush ob_start ob_end_flush 标头内容编码 = 无 隐式刷新 1 ob_end_clean
<?php
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
while( true ){
$time = date('r');
echo "retry:1000\r\n";
echo "data: ".$time;
echo "\r\n\r\n";
ob_flush();
flush();
sleep(1);
}
?>
这是用于生产服务器的,php-mod 不是一个选项,我也让它在 Fastcgi 中工作 FcgidOutputBufferSize 0 有没有办法让代码在 php-fpm 上运行,以便像 php-mod 和 fastcgi 一样立即发送输出?
PS 运行:Ubuntu 18.04、Apache 2.4.29、PHP 7.2
【问题讨论】:
标签: php