Настройка apache для работы с Perl в Windows
🕛 04.06.2009, 16:21
Чтобы перл задружил с апачем, сделаем несколько изменений в конфиге апача. 1. Сделаем так, чтобы папка в которой лежат наши .pl скрипты запускались апачем как cgi скрипты, для этого в настройках нашего хоста, например внутри хоста: ServerName xxx DocumentRoot “C:\xampp\htdocs\xxx” DirectoryIndex index.pl ErrorLog C:\xampp\apache\logs\xxx\error.log LogLevel warnдобавим следующие строки: AllowOverride All Options +ExecCGI +FollowSymLinks AddHandler cgi-script .pl
Теперь apache понимает все .pl файлы в папке C:\xampp\htdocs\xxx как cgi скрипты.
1. Для того чтобы apache не искал perl по линуксовому пути указанному в первой строке скрипта, например #!usr/bin/perl, а определял путь к перлу из реестра (как было настроено в “Свойствах папки”) добавим в пределах блока строку:
ScriptInterpreterSource registry
В результате получим настройки для хоста: ServerName xxx DocumentRoot “C:\xampp\htdocs\xxx” DirectoryIndex index.pl ErrorLog C:\xampp\apache\logs\xxx\error.log LogLevel warn
AllowOverride All Options +ExecCGI +FollowSymLinks AddHandler cgi-script .pl ScriptInterpreterSource registry
Установка модулей из CPAN в Strawberry perl
cpan
Не поверите, но процедура настолько проста, что ее описание сложно подтянуть под формат статьи.
Опишу ее по шагам:
1.
Запускаем консоль, любую, которую вы используете: cmd, far, console2. Лично я использую последнюю. Это open source проект, возможности достаточно интересное, но не в формате данной статьи. 2.
Набираем в командно строке: cpan 3.
После того как появилось приглашение cpan> можно устанавливать модули из репозитория cpan. Для установки исползуется команда install имя_модуля. Чтобы поискать модуль наберите команду i /имя_модуля/.
Все! Единственно пока что с чем пришлось повозиться это установка модуля DBD::Pg. С этим в Windows всегда были проблемы, но теперь и это не патовая задача.
Установка DBD::Pg модуля в Strawberry perl
Сразу оговорюсь, пишут что метод работает и для ActivePerl, но я не пробовал, последние мои изыскания касаются исключительно Strawberry perl.
1.
Идем на сайт проекта pgFoundry. И в разделе Файлы выбираем версию подходящую для нашего Perl, копируем прямую ссылку на пакет с расширением .ppd, для меня подходящим оказался DBD-Pg-2.10.0-Perl5.10.ppd. 2.
Запускаем консоль и набираем команду
ppm install http://pgfoundry.org/frs/download.php/1891/DBD-Pg-2.10.0-Perl5.10.ppd 3.
Теперь там же забираем файл msvcr80.dll и копируем его в bin каталог нашего Strawberry perl. 4.
Копируем Pg.dll.manifest из \site\lib\auto\DBD\Pg в bin каталог и переименуем его в perl.exe.manifest.
Все. получаем рабочий модуль DBD::Pg