Убедительная просьба убиться об стену ;-) И не смущать неокрепшие умы.<br><br><div class="gmail_quote">20 августа 2009 г. 20:14 пользователь Denis F. Latypoff <span dir="ltr">&lt;<a href="mailto:latypoff@yandex.ru">latypoff@yandex.ru</a>&gt;</span> написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
<br>
20.08.09, 19:28, &quot;opium&quot; &lt;<a href="mailto:opium@jabber.com.ua">opium@jabber.com.ua</a>&gt;:<br>
<br>
&gt; Maxim Dounin  писал(а) в своём письме Thu, 20 Aug 2009<br>
<div class="im">&gt; 16:59:57 +0300:<br>
&gt; &gt; Hello!<br>
&gt; &gt;<br>
&gt; &gt; On Thu, Aug 20, 2009 at 04:19:39PM +0300, opium wrote:<br>
&gt; &gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Делаю все как описано в<br>
&gt; &gt;&gt; <a href="http://www.fastcgi.com/drupal/node/6?q=node/22#S4" target="_blank">http://www.fastcgi.com/drupal/node/6?q=node/22#S4</a><br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; тоесть получаю запрос:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; {FCGI_BEGIN_REQUEST,   1, {FCGI_RESPONDER, 0}}<br>
&gt; &gt;&gt; {FCGI_PARAMS,          1, &quot;\013\002SERVER_PORT80\013\016SER&quot;}<br>
&gt; &gt;&gt; {FCGI_PARAMS,          1, &quot;VER_ADDR199.170.183.42 ... &quot;}<br>
&gt; &gt;&gt; {FCGI_PARAMS,          1, &quot;&quot;}<br>
&gt; &gt;&gt; {FCGI_STDIN,           1, &quot;quantity=100&amp;item=3047936&quot;}<br>
&gt; &gt;&gt; {FCGI_STDIN,           1, &quot;&quot;}<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; и даю ответ:<br>
&gt; &gt;&gt;<br>
</div>&gt; &gt;&gt;     {FCGI_STDOUT,      1, &quot;Content-type: text/html\r\n\r\n\n<br>
<div class="im">&gt; &gt;&gt; ... &quot;}<br>
&gt; &gt;&gt;     {FCGI_STDOUT,      1, &quot;&quot;}<br>
&gt; &gt;&gt;     {FCGI_END_REQUEST, 1, {0, FCGI_REQUEST_COMPLETE}}<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; проблема в том, что пока приложение не закроет соединение -- nginx<br>
&gt; &gt;&gt; ничего<br>
&gt; &gt;&gt; не отдает http клиенту. с lighttpd все ок. это так и должно быть? nginx<br>
&gt; &gt;&gt; требует закрытия соединения? или ему недостаточно одного<br>
&gt; &gt;&gt; FCGI_END_REQUEST<br>
&gt; &gt;&gt; и нужно слать еще чтото?<br>
&gt; &gt;<br>
&gt; &gt; Нужно закрыть соединение - как и предписывает отсутствие флага<br>
&gt; &gt; FCGI_KEEP_CONN в FCGI_BEGIN_REQUEST.<br>
&gt; &gt;<br>
&gt; &gt; Ну или брать патчи для постоянных соединений к fastcgi.<br>
&gt; &gt;<br>
&gt; Насчет флагов все понял, спасибо. Вопрос к автору: будет ли поддержка<br>
&gt; FCGI_KEEP_CONN?<br>
<br>
</div>Зачем Вам FastCGI? Я в свое время тоже увлекся этим,<br>
а потом сравнил по скорости и потреблению процессора одно<br>
и тоже приложение, но с разными протоколами - FastCGI vs HTTP.<br>
Я думаю все поняли, к чему я. Просто, если уж пишете реализацию<br>
протокола сами, то лучше напишите парсер HTTP/1.0, ведь приложения<br>
все равно будет за nginx&#39;ом, а 1.0 реализуется куда более проще<br>
и надежнее (в плане асинхронной обработки), чем FastCGI.<br>
<br>
2all: плюсуйте :)<br>
<font color="#888888"><br>
--<br>
br, Denis F. Latypoff.<br>
<br>
</font></blockquote></div><br>