Reputation: 1763
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.
Upvotes: 1
Views: 3208
Reputation: 13221
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.
Upvotes: 5
Reputation: 29897
My guess is that "connection_aborted()" is unable to detect the "ABORTED" connection
(and the script is still running)
Upvotes: 0