apache 2.2, WinXP, Perl 5.8скачал бинарники FastCGI module for Apache2.2 (http://www.apachelounge.com/download/mods/mod_fcgid-2.1-w32.zip) для win. архив содержит инструкцию 'Readme First.txt'. выполнил все требования разработчиков.
содержимое 'httpd.conf':
<code>
LoadModule fcgid_module modules/mod_fcgid.so<IfModule mod_fcgid.so>
AddHandler fastcgi-script .fcgi
</IfModule>
</code>код который содержится в 'test.fcgi':
<code>
use FCGI;$cnt = 0;
while (FCGI::accept() >= 0)
{
print ("Content-type: text/html\r\n\r\n");
print ("<head>\n<title>FastCGI Demo Page (perl)</title>\n</head>\n");
print ("<h1>FastCGI Demo Page (perl)</h1>\n");
print ("This is coming from a FastCGI server.\n<BR>\n");
print ("Running on <EM>$ENV{USER}</EM> to <EM>$ENV{REMOTE_HOST}</EM>\n<BR>\n");
$cnt++;
print ("This is connection number $cnt\n");
}
</code>скрипт стабильно выдает
<code>
FastCGI Demo Page (perl)
This is coming from a FastCGI server.
Running on to
This is connection number 1</code>фактически $cnt++; всегда равна единице. гуглить устал :)
>apache 2.2, WinXP, Perl 5.8
>
>скачал бинарники FastCGI module for Apache2.2 (http://www.apachelounge.com/download/mods/mod_fcgid-2.1-w32.zip) для win. архив содержит инструкцию
>'Readme First.txt'. выполнил все требования разработчиков.
>
>содержимое 'httpd.conf':
><code>
>LoadModule fcgid_module modules/mod_fcgid.so
>
><IfModule mod_fcgid.so>
> AddHandler fastcgi-script .fcgi
></IfModule>
></code>
>
>код который содержится в 'test.fcgi':
><code>
>use FCGI;
>
>$cnt = 0;
>
>while (FCGI::accept() >= 0)
>{
> print ("Content-type: text/html\r\n\r\n");
> print ("<head>\n<title>FastCGI Demo Page (perl)</title>\n</head>\n");
> print ("<h1>FastCGI Demo Page (perl)</h1>\n");
> print ("This is coming from a FastCGI server.\n<BR>\n");
> print ("Running on <EM>$ENV{USER}</EM> to <EM>$ENV{REMOTE_HOST}</EM>\n<BR>\n");
> $cnt++;
> print ("This is connection number $cnt\n");
>}
></code>
>
>скрипт стабильно выдает
><code>
>FastCGI Demo Page (perl)
>This is coming from a FastCGI server.
>Running on to
>This is connection number 1</code>
>
>фактически $cnt++; всегда равна единице. гуглить устал :)Надпись use strict избавит от многих проблем: my $cnt = 0;
>
>Надпись use strict избавит от многих проблем: my $cnt = 0;
забыл. действительно, важное замечание. теперь код содержит строки
<code>
use strict;
use FCGI;my $cnt = 0;
</code>но значение $cnt не меняется от вызова к вызову
до цикла while идет инициализация Постоянных переменных
поэтому и cnt не меняется