Установка Perl

"Язык может считаться законченным только тогда, когда
в его синтаксисе используются все клавиши на клавиатуре"
Отец-основатель Perl

 Пожалуй, установка Perl – один из самых простых шагов, однако, как это не парадоксально, он чаще всего порождает больше всего осложнений. Приведенные ниже рекомендации помогут Вам установить Perl и забыть обо всех неприятностях, связанных с CGI-скриптами на Perl.

  • Первым делом посетите http://www.activestate.com/, зайдите в раздел Downloads и скачайте оттуда самый последний дистрибутив Perl для платформы Win32. При этом следуйте рекомендациям, приведенным на сайте. Вкратце они заключаются в следующем: Perl предоставляется не в виде саморазворачивающегося exe-архива, а в виде так называемого msi-архива для Microsoft Installer-а. Возможно, на Вашем компьютере Installer не установлен, так что Вам придется это сделать, прежде чем устанавливать Perl (ссылка на дистрибутив Microsoft Installer-а приведена на сайте в разделе Downloads).
  • В Проводнике щелкните дважды на имени файла только что скачанного дистрибутива Perl. Автоматически запустится Microsoft Installer и начнется процесс установки. Как обычно, нажимайте кнопку Next до тех пор, пока не появится диалог с запросом директории, в которую будет установлен Perl. По умолчанию там предлагается C:\Perl. Рекомендуем сменить эту директорию на нечто более удобное – например, C:\Program Files\Perl. Если Вы любите порядок, сделайте это обязательно.
  • Теперь настроим сервер. Найдите в файле конфигурации Apache httpd.conf строчку
    AddHandler cgi-script .bat .exe

    Замените ее на

    AddHandler cgi-script .bat .exe .pl .cgi

    Как это ни странно, но эту директиву AddHandler иногда указывать не обязательно. Однако лучше перестраховаться…

  • Найдите и раскомментируйте параметр:
    ScriptInterpreterSource registry

    Это позволит Apache использовать Реестр для поиска Perl-интерпретатора.

 Вот, собственно, и все. Для проверки работоспособности Perl зоздайте в директории z:\localhost\cgi файл test.pl с таким содержанием:

#!/usr/local/bin/perl -w
print "Content-type: text/html\n\n";
print "It works!<br>\n";
system("dir");

Важно!
Обратите внимание на первую строчку в скрипте. Можно подумать, что она указывает Apache, что Perl расположен в z:\usr\local\bin\perl.exe. На самом же деле Apache видит, что такого файла не существует, и использует Реестр для поиска ассоциации для расширения pl. Происходит это благодаря директиве ScriptInterpreterSource, которую мы активизировали до этого. Однако, хотя Apache игнорирует первую строку в скрипте, Perl ее испольчует для того, чтобы определить, какие флаги были использованы при его запуске (в нашем примере это флаг -w, который включает режим вывода сообщений об ошибках в скрипте).

Добавить комментарий

Вам надо войти, чтобы написать комментарий.