Victor Sudakov
April 15, 2021 01:04AM
Maxim Dounin wrote:
>
> On Tue, Apr 13, 2021 at 02:52:00PM +0700, Victor Sudakov wrote:
>
> > Aleksandr Sytar wrote:
> > >
> > > > Что должно
> > > > произойти, когда пользователь отменил HTTP запрос, или браузер закрыл?
> > > > nginx закроет соответствующее соединение с php-fpm ? А PHP-код продолжит
> > > > работу? Или должен прерваться?
> > > >
> > > > Прошу прощения за сумбурное изложение, поправки и указания на неверное
> > > > понимание логики работы с благодарностью принимаются.
> > > >
> > > >
> > > >
> > > Раз - https://habr.com/ru/post/179399/
> > > Двас - https://www.php.net/manual/ru/function.fastcgi-finish-request.php и
> > > крути себе дальше в базе что надо.
> >
> > Я наверное плохо сформулировал вопрос, но мне как раз интересно видеть
> > обратное поведение. Закрыли браузер - обслуживавший этот сеанс процесс
> > PHP завершился, что бы ни делал в этот момент.
> >
> > А в приведенных ссылках обратную задачу пытаются решить.
>
> Прямая задача, как я понимаю, нормально решается только в случае,
> если php-скрипт что-то возвращает клиенту, подробнее тут:
>
> https://www.php.net/manual/en/features.connection-handling.php

Спасибо, Maxim, очень полезная ссылка. Я в первом письме так и
предполагал, как должно происходить (см. последнюю строчку цитаты):

"If the remote client disconnects, the ABORTED state flag is turned on.
A remote client disconnect is usually caused by users hitting their STOP
button. [...] You can decide whether or not you want a client disconnect
to cause your script to be aborted. Sometimes it is handy to always have
your scripts run to completion even if there is no remote browser
receiving the output. The default behaviour is however for your script
to be aborted when the remote client disconnects. "

Другой вопрос, почему в наблюдаемом мной случае это не происходило.
Пойду посмотрю код, может там действительно какой-нибудь
ignore_user_abort стоит. В php.ini уже проверил,
ignore_user_abort => Off => Off

> https://www.php.net/manual/en/function.ignore-user-abort.php
> https://www.php.net/manual/en/function.connection-aborted.php
>
> Но я не настоящий сварщик, про php знаю мало.
>
> > Антиоффтопик. nginx-то что делает в момент закрытия соединения
> > клиентским браузером: закрывает ли соответствущее соединение с fastcgi
> > upstream-ом?
>
> В общем случае да. И именно для того, чтобы бэкенд узнал о том,
> что соединение закрыто клиентом и выполняемая работа больше не
> нужна.

Так и предполагал.

> Если этого по каким-то не требуется, то можно использовать
> директиву fastcgi_ignore_client_abort:
>
> http://nginx.org/r/fastcgi_ignore_client_abort
>
> Кроме того, соединение не будет закрыто, если используется
> кэширование или fastcgi_store, так как в этих случаях ответ
> бэкенда полезен вне зависимости от того, будет ли он отправлен
> конкретному клиенту.

А может и кэширование причиной. Но стало понятнее, куда копать, спасибо
еще раз.

--
Victor Sudakov VAS4-RIPE
http://vas.tomsk.ru/
2:5005/49@fidonet
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 01:12AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 03:04AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 03:48AM

Re: Тонкости работы FastCGI (phpfpm)

Slawa Olhovchenkov April 13, 2021 08:08AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 14, 2021 01:52AM

Re: Тонкости работы FastCGI (phpfpm)

Aleksandr Sytar April 13, 2021 03:06AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 03:52AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 06:02AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 06:04AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 06:20AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 06:26AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 06:32AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 06:42AM

Re: Тонкости работы FastCGI (phpfpm)

Eugene Grosbein April 13, 2021 07:20AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 13, 2021 06:30AM

Re: Тонкости работы FastCGI (phpfpm)

greenh April 13, 2021 06:40AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 15, 2021 01:04AM

Re: Тонкости работы FastCGI (phpfpm)

Maxim Dounin April 13, 2021 09:42AM

Re: Тонкости работы FastCGI (phpfpm)

VovansystemS April 13, 2021 10:04AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 15, 2021 01:04AM

Re: Тонкости работы FastCGI (phpfpm)

Maxim Dounin April 15, 2021 10:22AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 16, 2021 01:56AM

Re: Тонкости работы FastCGI (phpfpm)

Evgeniy Berdnikov April 16, 2021 02:34AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 16, 2021 03:28AM

Re: Тонкости работы FastCGI (phpfpm)

Evgeniy Berdnikov April 16, 2021 04:40AM

Re: Тонкости работы FastCGI (phpfpm)

Maxim Dounin April 16, 2021 10:56AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 21, 2021 04:00AM

Re: Тонкости работы FastCGI (phpfpm)

Evgeniy Berdnikov April 21, 2021 05:08AM

Re: Тонкости работы FastCGI (phpfpm)

Victor Sudakov April 22, 2021 12:24AM

Re: Тонкости работы FastCGI (phpfpm)

Slawa Olhovchenkov April 21, 2021 06:46AM

Re: Тонкости работы FastCGI (phpfpm)

Eugene Grosbein April 21, 2021 08:16AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 167
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready