FCGI_END_REQUEST и закрытие соединения
Pavel Labushev
p.labushev at gmail.com
Tue Aug 25 23:07:28 MSD 2009
Denis F. Latypoff пишет:
>> Зависит от задач. Передавать переменные среды по HTTP однозначно
>> сложнее, с логированием и обработкой ошибок тоже не всё гладко.
>
> Отделяем мух от котлет: переменные среды это уже не HTTP, а CGI протокол.
О том и речь. Передать переменные по FastCGI так же просто, как по CGI.
А для передачи по HTTP их надо помещать в заголовки на фронтенде и
вытаскивать на бэкенде, либо передавать их в модифицированном теле запроса.
> насчет, логгирования и обработки ошибок - можно подробнее?
Весь поток ошибок FastCGI-приложения инкапсулируется и в рамках той же
сессии передаётся фронтенду отдельно от стандартного вывода, в котором
идут заголовки и контент. Поэтому конечный клиент отдельную ругань
бэкенда не видит никогда. А фронтенд может разом залогировать под одним
идентификатором запрос к бэкенду, его ответ, и его же сообщения об
ошибках. В случае с HTTP отдавать ошибки отдельно от ответа нельзя, а
записи в логах сложнее сопоставлять.
More information about the nginx-ru
mailing list