А у кого-нибудь получилось запустить под FreeBSD перловый fastcgi с помощью
cgi-fcgi из FastCGI Developer's Kit ?
У меня работает только с unix sockets и только под FreeBSD 5.3.
Запускалось так:
cgi-fcgi -start -connect localhost:9001 fastcgi.pl
cgi-fcgi -start -connect /tmp/perl fastcgi.pl
fastcgi.pl такой (из примера):
--------
#!/usr/bin/perl
use FCGI;
$count = 0;
while(FCGI::accept() >= 0) {
print("Content-type: text/html\r\n\r\n",
"<title>FastCGI Hello! (Perl)</title>\n",
"<h1>FastCGI Hello! (Perl)</h1>\n",
"Request number ", ++$count,
" running on host <i>", $ENV{'SERVER_NAME'}, "</i>");
}
--------
При использовании tcp под FreeBSD 4.8 и 5.3 процесс постоянно вызывает
accept() и получает ECONNABORTED.
При использовании unix sockets под 4.8 nginx соединяется, передаёт запрос,
затем читает и получает 0. В ktrace видно что fastcgi.pl успешно читает
запрос, передаёт ответ, а write возвращает EPIPE.
Игорь Сысоев
http://sysoev.ru