Я пытаюсь запустить Perl/FastCGI (FCGI) с IIS 7.5. Версия C:\Windows\System32\inetsrv\iisfcgi.dll
- 7.5.7601.17514
. Здесь мой web.config
и мой Perl script:
D:\MiLu\Dev :: more /t1 web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<directoryBrowse enabled="true" />
<handlers>
<add name="FCGI" path="*.pl" verb="*"
modules="FastCgiModule"
scriptProcessor="C:\Opt\Cygwin\bin\perl.exe"
resourceType="Unspecified" requireAccess="Script" />
</handlers>
</system.webServer>
</configuration>
D:\MiLu\Dev :: more /t4 Perl\fcgi\count.pl
use strict;
use warnings;
use FCGI;
my $count = 0;
my $request = FCGI::Request();
while ( $request->Accept >= 0 ) {
print "Content-type: text/html\r\n\r\n", ++$count;
}
Все, что я получаю, это 500 с общей страницей ошибок из IIS, в которой указано, что "процесс FastCGI неожиданно вышел из системы" и перечислены возможные причины ошибок.
script отлично работает из командной строки, печатает три строки и сразу же выходит из него, указывая, что script и установка модуля в порядке. (Я скопировал его из руководства FCGI, так что все должно быть в порядке.)
D:\MiLu\Dev :: C:\Opt\Cygwin\bin\perl.exe Perl\fcgi\count.pl
Content-type: text/html
1
Существует FCGI::IIS module
, однако он работает только для IIS 5.1 и 6.0.
Тот факт, что имеется выделенный модуль FCGI для IIS, предполагает, что IIS 5.1 и 6.0 предоставили собственную нестандартную реализацию FCGI. Итак, если это так, то как насчет IIS 7.5? Довольно много неопределенностей.
Автор FCGI::IIS
похоже, попытался сделать свой модуль работой с IIS 7.0 (Getting Perl, работающим с IIS7 с FastCGI - 2007), но отказался.
Где я могу найти что-то более конкретное относительно того, что такое ошибка? Есть ли файл журнала? Что мне нужно искать в средстве просмотра событий Windows (eventvwr)?
Есть ли какое-то магическое заклинание для IIS, которое мне не хватает?
Там не так много информации об этой комбинации. Но это может сработать, в конце концов. Здесь есть страница настройки конфигурации приложения FastCGI, а у кого-то есть Catalyst для работы с FastCGI на IIS 7.0 (Catalyst + IIS 7.0 на MS Windows 2008/Vista).