[cgi - perl] как поднять web-поддержку перла?
http://www.geology.pu.ru/web/web_perl.shtml
Установка Perl и настройка модулей DBI, DBD::mysql.
Первым делом посетитеhttp://www.activestate.com, зайдите в раздел Downloads и скачайте оттуда самый последний дистрибутив ActivePerl для платформы Win32. При этом следуйте рекомендациям, приведенным на сайте. Вкратце они заключаются в следующем: Perl предоставляется не в виде саморазворачивающегося exe-архива, а в виде так называемого msi-архива для Microsoft Installer-а. Возможно, на Вашем компьютере Installer не установлен, так что Вам придется это сделать, прежде чем устанавливать Perl (ссылка на дистрибутив Microsoft Installer-а приведена на сайте в разделе Downloads).
В Проводнике щелкните дважды на имени файла только что скачанного дистрибутива Perl. Автоматически запустится Microsoft Installer и начнется процесс установки. Как обычно, нажимайте кнопку Next до тех пор, пока не появится диалог с запросом директории, в которую будет установлен Perl. По умолчанию там предлагается C:\Perl. Рекомендуем сменить эту директорию на нечто более удобное - например, D:\usr\perl. Если Вы любите порядок, сделайте это обязательно.
Теперь настроим сервер. Найдите в файле конфигурации Apache httpd.conf строчку
AddHandler cgi-script .bat .exe
Замените ее на
AddHandler cgi-script .bat .exe .pl .cgi
Как это ни странно, но эту директиву AddHandler иногда указывать не обязательно. Однако лучше перестраховаться...
Найдите и раскомментируйте параметр:
ScriptInterpreterSource registry
Это позволит Apache использовать Реестр для поиска Perl-интерпретатора.
Вот, собственно, и все.
Для проверки работоспособности Perl создайте в директории
d:\localhost\cgi-bin файл test.pl с таким содержанием:
#!/usr/perl/bin/perl -w
print "Content-type: text/html\n\n";
print "It works!\n";
system("dir");
Важно!
Обратите внимание на первую строчку в скрипте. Можно подумать, что она указывает Apache, что Perl расположен в d:\usr\perl\bin\perl.exe. На самом же деле Apache видит, что такого файла не существует, и использует Реестр для поиска ассоциации для расширения pl. Происходит это благодаря директиве ScriptInterpreterSource, которую мы активизировали до этого. Однако, хотя Apache игнорирует первую строку в скрипте, Perl ее использует для того, чтобы определить, какие флаги были использованы при его запуске (в нашем примере это флаг -w, который включает режим вывода сообщений об ошибках в скрипте).
Настройка модулей
Далее следует установить модули, расширяющие функциональность Perl. Необходимы модули для работы с MySQL, могут потребоваться модули для работы с базами данных под Windows (типа Microsoft Access) и, возможно, почтой.
Настоятельно рекомендуется проверить наличие модулей CGI.pm, DBI, DBD::mysql. Для получения информации о модулях достаточно, например, применить следующие команды:
* perldoc DBI
* perldoc DBD::mysql
* perldoc Mail::Sendmail
Установка ActivePerl дает возможность под управлением Windows с помощью ActiveState устанавливать модули Perl прямо из сети, пользуясь средствами PPM(Perl Package Manager).
Так например:
C:\>ppm
PPM> install DBI
или
C:\>ppm
PPM> install DBD::mysql
При выполнении этой команды происходит поиск необходимых модулей в усовершенствованной архивной сети Perl (CPAN — Comprehensive Perl Active Network) и последующая их установка на ваш компьютер.
Установка Perl и настройка модулей DBI, DBD::mysql.
Первым делом посетитеhttp://www.activestate.com, зайдите в раздел Downloads и скачайте оттуда самый последний дистрибутив ActivePerl для платформы Win32. При этом следуйте рекомендациям, приведенным на сайте. Вкратце они заключаются в следующем: Perl предоставляется не в виде саморазворачивающегося exe-архива, а в виде так называемого msi-архива для Microsoft Installer-а. Возможно, на Вашем компьютере Installer не установлен, так что Вам придется это сделать, прежде чем устанавливать Perl (ссылка на дистрибутив Microsoft Installer-а приведена на сайте в разделе Downloads).
В Проводнике щелкните дважды на имени файла только что скачанного дистрибутива Perl. Автоматически запустится Microsoft Installer и начнется процесс установки. Как обычно, нажимайте кнопку Next до тех пор, пока не появится диалог с запросом директории, в которую будет установлен Perl. По умолчанию там предлагается C:\Perl. Рекомендуем сменить эту директорию на нечто более удобное - например, D:\usr\perl. Если Вы любите порядок, сделайте это обязательно.
Теперь настроим сервер. Найдите в файле конфигурации Apache httpd.conf строчку
AddHandler cgi-script .bat .exe
Замените ее на
AddHandler cgi-script .bat .exe .pl .cgi
Как это ни странно, но эту директиву AddHandler иногда указывать не обязательно. Однако лучше перестраховаться...
Найдите и раскомментируйте параметр:
ScriptInterpreterSource registry
Это позволит Apache использовать Реестр для поиска Perl-интерпретатора.
Вот, собственно, и все.
Для проверки работоспособности Perl создайте в директории
d:\localhost\cgi-bin файл test.pl с таким содержанием:
#!/usr/perl/bin/perl -w
print "Content-type: text/html\n\n";
print "It works!\n";
system("dir");
Важно!
Обратите внимание на первую строчку в скрипте. Можно подумать, что она указывает Apache, что Perl расположен в d:\usr\perl\bin\perl.exe. На самом же деле Apache видит, что такого файла не существует, и использует Реестр для поиска ассоциации для расширения pl. Происходит это благодаря директиве ScriptInterpreterSource, которую мы активизировали до этого. Однако, хотя Apache игнорирует первую строку в скрипте, Perl ее использует для того, чтобы определить, какие флаги были использованы при его запуске (в нашем примере это флаг -w, который включает режим вывода сообщений об ошибках в скрипте).
Настройка модулей
Далее следует установить модули, расширяющие функциональность Perl. Необходимы модули для работы с MySQL, могут потребоваться модули для работы с базами данных под Windows (типа Microsoft Access) и, возможно, почтой.
Настоятельно рекомендуется проверить наличие модулей CGI.pm, DBI, DBD::mysql. Для получения информации о модулях достаточно, например, применить следующие команды:
* perldoc DBI
* perldoc DBD::mysql
* perldoc Mail::Sendmail
Установка ActivePerl дает возможность под управлением Windows с помощью ActiveState устанавливать модули Perl прямо из сети, пользуясь средствами PPM(Perl Package Manager).
Так например:
C:\>ppm
PPM> install DBI
или
C:\>ppm
PPM> install DBD::mysql
При выполнении этой команды происходит поиск необходимых модулей в усовершенствованной архивной сети Perl (CPAN — Comprehensive Perl Active Network) и последующая их установка на ваш компьютер.
Спасибо, все очень круто написано, а как быть с IIS(Internet Infomation Server)...просто у меня все с ним связано..
Вообще, всех, кто не может установить нормальный Юникс-хостинг, всех денверистов особенно, надо посылать туда же -- в школу.
Бля, ну когда это прекратится? Какой-то пидорас написал скрипт пидарского счетчика, а ты даже не показывая ни этот скрипт, ни ошибки, ни что-то еще требуешь какой-то помощи. Причем вопрос задан ни в пизду, ни в красную армию
Совет - все кейсы нужно описывать по типу "ткнул туда-то, вижу то-то, вместо предполагаемого того-то". Никакие "связи" никому на хуй не интересны.
Оставить комментарий
112357
Привет народ.. интересует меня такая штука: вот счетчик написан в перле, с ним связан хтмл документ, который посылает запрос в перловский документ.А вопрос вот в чем, нужен ли какой - нибудь серв перла, чтобы все работало...
Просто я установил АктивПерл... она мне установила прогу в папку C:\Perl , а там все программисты знают... так вот в папочке бин нахожу файлы типа perl.exe , но не вижу их связи с сервером, при запуске своего счетчика так ничего и не пашет...
Объясните плиз..(смех в мой адрес только разделяю.. но ничего поделать не могу)