PHP connection_aborted不能与nginx一起使用?

我似乎无法将函数connection_aborted与nginx一起使用。 我用来测试的代码如下:</ p>

 &lt;?php 
ignore_user_abort(true);
ob_implicit_flush();
$ i = 0;
while(! connection_aborted()){
echo $ i;
$ i ++;
sleep(1);
}
file_put_contents('test',$ i);
</ code> </ pre>
\ n

在Apache中,它可以正常工作,尽管它有点延迟。 即,当我在“3”时按下浏览器上的停止按钮时,“测试”文件显示“8”。 这是一个可接受的余量,但在nginx上,它似乎不会向'test'文件输出任何内容。</ p>
</ div>

展开原文

原文

I can't seem to get the function connection_aborted to work with nginx. The code I used to test is as follow:

<?php
ignore_user_abort(true);
ob_implicit_flush();
$i = 0;
while (!connection_aborted()) {
    echo $i;
    $i++;
    sleep(1);
}
file_put_contents('test',$i);

In Apache, it works correctly, although it delays a little. i.e. When I press stop button on browser when "3", the 'test' file shows "8". That is an acceptable margin, but on nginx, it doesn't seem to output anything to the 'test' file.

2个回答



检查你的Nginx配置,它应该</ p>

  fastcgi_ignore_client_abort off; 
< / code> </ pre>

此配置键默认为 off </ code>,因此即使您根本没有 fastcgi_ignore_client_abort </ code>,您的脚本应该 按预期工作。</ p>
</ div>

展开原文

原文

Check your Nginx configuration, it should have

fastcgi_ignore_client_abort off;

This configuration key has off as the default, so even if you have no fastcgi_ignore_client_abort at all, your script should work as expected.



我的猜测是“connection_aborted()”无法检测到“ABORTED”连接

(脚本是 仍在运行</ strong>)</ p>
</ div>

展开原文

原文

My guess is that "connection_aborted()" is unable to detect the "ABORTED" connection
(and the script is still running)

douqu8828
douqu8828 我只使用nginx和lighttpd作为静态内容。 抱歉...
10 年多之前 回复
dongyou26216708
dongyou26216708 这也是我的猜测,但我正在寻找一个解决方案,除非你告诉我这是nginx的错误......
10 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐