<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: FastCGI + nginx + autoflush</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7243.html</link>
    <description>Столкнулся с непонятностью: демон на perl при обращении к нему через nginx выводит все и сразу и только после полной отработки скрипта. А должен и хочется, чтобы выводил построчно по мере генерации.&lt;br&gt;Код самого скрипта:&lt;br&gt;&lt;br&gt;~~~~~~~~~~~&lt;br&gt;#!/usr/bin/perl&lt;br&gt;&lt;br&gt;use strict;&lt;br&gt;use warnings;&lt;br&gt;use FCGI;&lt;br&gt;use Proc::Daemon;&lt;br&gt;use Proc::PID::File;&lt;br&gt;&lt;br&gt;$&amp;#124; = 1;&lt;br&gt;&lt;br&gt;Proc::Daemon::Init();&lt;br&gt;&lt;br&gt;if (Proc::PID::File-&amp;gt;running()) &#123;&lt;br&gt;    print &quot;Already running&#092;n&quot;;&lt;br&gt;    exit 0;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;my $socket = FCGI::OpenSocket(&quot;:9888&quot;, 5);&lt;br&gt;&lt;br&gt;my $request = FCGI::Request(&#092;*STDIN, &#092;*STDOUT, &#092;*STDERR, &#092;&#037;ENV, $socket);&lt;br&gt;&lt;br&gt;while($request-&amp;gt;Accept() &amp;gt;= 0) &#123;&lt;br&gt;    print &quot;Content-Type: text/html&#092;r&#092;n&#092;r&#092;n&quot;;&lt;br&gt;    print &quot;Autoflush is currently &quot;.($&amp;#124;?&quot;on&quot;:&quot;off&quot;).&quot;.&lt;br&gt;&#092;n&quot;;&lt;br&gt;    for ( 1..5 ) &#123;&lt;br&gt;         print &quot;Value is $_.&lt;br&gt;&#092;n&quot;;&lt;br&gt;         sleep 1;&lt;br&gt;    &#125;&lt;br&gt;    print &quot;Autoflush is currently &quot;.($&amp;#124;?&quot;on&quot;:&quot;off&quot;).&quot;.&lt;br&gt;&#092;n&quot;;&lt;br&gt;&#125;;&lt;br&gt;&lt;br&gt;~~~~~~~~~~~&lt;br&gt;&lt;br&gt;&lt;br&gt;В конфиге nginx:&lt;br&gt;  location ~* ^/ts/? &#123;&lt;br&gt;      fastcgi_pass localhost:9888;&lt;br&gt;  &#125;&lt;br&gt;&lt;br&gt;gzip отключен.&lt;br&gt;&lt;br&gt;Подскажите, плз, иб</description>

<item>
    <title>FastCGI + nginx + autoflush (PavelR)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7243.html#3</link>
    <pubDate>Mon, 23 May 2011 17:49:05 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;     print &quot;Autoflush is currently &quot;.($&amp;#124;?&quot;on&quot;:&quot;off&quot;).&quot;.&lt;br&gt;&amp;gt; &#092;n&quot;; &lt;br&gt;&amp;gt; &#125;; &lt;br&gt;&amp;gt; ~~~~~~~~~~~ &lt;br&gt;&amp;gt; В конфиге nginx: &lt;br&gt;&amp;gt;   location ~* ^/ts/? &#123; &lt;br&gt;&amp;gt;       fastcgi_pass localhost:9888; &lt;br&gt;&amp;gt;   &#125; &lt;br&gt;&amp;gt; gzip отключен.&lt;br&gt;&amp;gt; Подскажите, плз, ибо печаль. Должно же работать...&lt;br&gt;&lt;br&gt;не будет работать.&lt;br&gt;буферизация на нжынксе отключаема только для http-проксирования. &lt;br&gt;</description>
</item>

<item>
    <title>FastCGI + nginx + autoflush (localhorst)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7243.html#2</link>
    <pubDate>Mon, 23 May 2011 09:37:04 GMT</pubDate>
    <description>&amp;gt; Попробуй еще добавить: &lt;br&gt;&amp;gt;&amp;gt; my $socket = FCGI::OpenSocket(&quot;:9888&quot;, 5); &lt;br&gt;&amp;gt;  $socket-&amp;gt;autoflush(); &lt;br&gt;&amp;gt;&amp;gt; my $request = FCGI::Request(&#092;*STDIN, &#092;*STDOUT, &#092;*STDERR, &#092;&#037;ENV, $socket); &lt;br&gt;&lt;br&gt;Пробовал. Не запускается в принципе. Ошибок не выводит (ибо не должен вроде вообще ничего выводить), ни в какие логи ничего не пишет.&lt;br&gt;</description>
</item>

<item>
    <title>FastCGI + nginx + autoflush (cryo)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7243.html#1</link>
    <pubDate>Mon, 23 May 2011 09:27:27 GMT</pubDate>
    <description>Попробуй еще добавить:&lt;br&gt;&lt;br&gt;&amp;gt; my $socket = FCGI::OpenSocket(&quot;:9888&quot;, 5); &lt;br&gt;&lt;br&gt; $socket-&amp;gt;autoflush();&lt;br&gt;&lt;br&gt;&amp;gt; my $request = FCGI::Request(&#092;*STDIN, &#092;*STDOUT, &#092;*STDERR, &#092;&#037;ENV, $socket); </description>
</item>

</channel>
</rss>
