Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FCGI_END_REQUEST и закрытие сое динения
- To: nginx-ru@xxxxxxxxx
- Subject: Re: FCGI_END_REQUEST и закрытие сое динения
- From: Pavel Labushev <p.labushev@xxxxxxxxx>
- Date: Wed, 26 Aug 2009 03:07:28 +0800
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=4G0yXpqGaEZF/NaTqCiURQIyBwkFuTm7jr6Eo6L5me0=; b=nxshFuZIwNw6YYrpyFoWB9us0nJX0CUvExizVFFuv7orHxAtG5XpCwaGDDcLW2IT75 LllKZQdbJ7PaJvy0dous5bvrxsWCeMoWphv4U3HMIT3d7wml6zcMChTGAPNqywzv9Iek cGNtcEHbWxn/C7GJz13kVLPTW8vCyESyrH89Q=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; b=jsqtx0HRgNM8SAbaeLcc/vcqy+QNbqqpBjdA6vCo5v/4lPG5091JXpQ9+LDjtlMF16 8hibUj3K4dTYmRN3rdZ0ENNrBKcsG1b8zGvgDchh+xjt/sVxrdHHLaOyKZT343JFB7Wf yHYP3p1KPdeKH2szF44WBIAXOh6fs83kNO8GU=
- In-reply-to: <138401251223287@xxxxxxxxxxxxxxxxxxx>
- References: <224731250784856@xxxxxxxxxxxxxxxxxxxx> <7E4C1E2BA28D41938382DA3AAB046DD5@maxhl> <508048600.20090825203855@xxxxxxxxxx> <4A94158C.8030700@xxxxxxxxx> <138401251223287@xxxxxxxxxxxxxxxxxxx>
Denis F. Latypoff пишет:
>> Зависит от задач. Передавать переменные среды по HTTP однозначно
>> сложнее, с логированием и обработкой ошибок тоже не всё гладко.
>
> Отделяем мух от котлет: переменные среды это уже не HTTP, а CGI протокол.
О том и речь. Передать переменные по FastCGI так же просто, как по CGI.
А для передачи по HTTP их надо помещать в заголовки на фронтенде и
вытаскивать на бэкенде, либо передавать их в модифицированном теле запроса.
> насчет, логгирования и обработки ошибок - можно подробнее?
Весь поток ошибок FastCGI-приложения инкапсулируется и в рамках той же
сессии передаётся фронтенду отдельно от стандартного вывода, в котором
идут заголовки и контент. Поэтому конечный клиент отдельную ругань
бэкенда не видит никогда. А фронтенд может разом залогировать под одним
идентификатором запрос к бэкенду, его ответ, и его же сообщения об
ошибках. В случае с HTTP отдавать ошибки отдельно от ответа нельзя, а
записи в логах сложнее сопоставлять.
|