On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

Запуск и отладка Perl-программ и CGI-скриптов под Windows

Олег Глушков

Данная статья будет полезна не только хозяевам домашних страниц, но также мелким и средним коммерческим компаниям, имеющим в арсенале одним из инструментов сбыта товаров и услуг электронные издания в виде узкоспециализированных сайтов.
Типичный портрет привычного сайтовладельца включает в себя ПК под Windows с удаленным доступом к Internet и размещенный сайт под unix-совместимыми системами. 
Учитывая все еще высокую стоимость работы в Сети, многим приходится изготавливать ресурсы у себя на компьютере, просматривать их браузером и лишь затем выкладывать на хост-сервер. Если структура контента состоит из множества каталогов, то браузером невозможно увидеть сайт во всем его многообразии. 
Для преодоления этого препятствия можно установить и сервер Apache под Windows, но для большинства случаев достаточно воспользоваться замечательной утилитой, разработанной в Rit Labs под названием Tiny Web (размер ее в упакованном виде не превышает 100 Кб).
Скачать программу можно с сайта разработчика по адресу: http://www.ritlabs.com/.  Для ее успешной работы под Windows 95 -98 требуется установка TCP-IP протокола в разделе "Сеть" Панели управления. Инсталляции TinyWeb не требуется, достаточно создать bat-файл в директории, где будет лежать исполняемый файл программы. 
Сам "батник" содержит одну строку вида "d:\www\bin\tiny.exe d:\www", где параметром служит директория с расположением файла первой страницы сайта index.html (там должен быть и весь сайт со структурой каталогов).
После запуска bat-файла запускаем браузер и в адресной строке набираем http://localhost/.  Если у Вас на сайте используются абсолютные ссылки, то их следует сменить на короткие относительные (относительно домашнего каталога сервера владельца хостинга).
Теперь перейдем к вопросу о запуске CGI-скриптов.
Для этого необходимо скачать и установить интерпретатор ActivePerl под Windows. 
У меня стоит 519 build; возможно, есть более новая версия. Поискать все это можно по адресам: http://www.perl.com/http://www.activestate.com/.  Размер установочного файла чуть больше 8 Мб, и для правильной работы дополнительно требуется: под WinNT Service pack 5+ или выше, под Windows 95-98 Microsoft Windows Installer (можно взять по адресу http://download.microsoft.com/download/platformsdk/wininst/1.1/W9X/EN-US/InstMsi.exe ), для владельцев 95 еще и DCOM for Windows 95 (поискать можно по адресу http://www.microsoft. com/com/resources/downloads.asp).
После установки TinyWeb создайте директорию cgi-bin для Perl и CGI в директории, где лежит начальный файл сайта index.html. Теперь вы сможете запускать на win-машине CGI-скрипты (chmod не надо делать), которые не используют вызовы внешних unix-команд типа sendmail, работы с файлами и т.д (для этого вам еще нужны утилиты UNIX под Dos). 
Вообще, такие вещи, как форумы, гостевые книги, будут работать и в таких условиях.
Для почти всех случаев жизни существуют готовые CGI-скрипты, сайтов c ними достаточно (download.ru и т.д.). 
Перед запуском скриптов (даже готовых) их необходимо настроить на локальное использование, заменив адрес сайта на http://locahost/ ( http://127.0.0.1/ ). Физический путь к файлам на диске надо указать таким, каким он виден вам на вашем компьютере (напр. d:\www\, т.е. путь к файлам сайта в папке с TinyWeb). В основной массе бесплатных, свободно распространяемых CGI в тексте скрипта почти всегда есть такие настройки.

Отладка Perl и CGI довольно капризная вещь, даже на родных unix-системах это довольно трудоемкий процесс. Существуют программные средства, которые могут частично справиться с этой задачей. 
К примеру, по адресу http://www.ActiveState.com/PDK/  лежит пакет Perl Dev Kit, в котором встроен свой отладчик, позволяющий выполнять элементарные операции типа "по шагам", "к точке останова" и т.д.
Вообще, на этом можно было бы закончить повествование, но законы экономики диктуют свои условия: спрос рождает предложение. Поэтому мы можем воспользоваться уже второй версией Perl Builder, от Solution Soft, которая позволяет делать не только отладку CGI-скриптов под Windows, но и заменяет стандартный набор утилит Unix под DOS (о чем говорилось выше). 
Программа содержит внутренний интерфейс заполняемых форм, что позволяет отладить даже методы Get и Post, используемые в формах сайтов. 
Есть просмотр значений переменных (watch list), инициализация значений, точки останова и прочие особенности нормального отладчика. Всю информацию, выводимую CGI-скриптом, можно просмотреть в браузере. 
К примеру, у меня вполне нормально отрабатывал скрипт поиска по сайту и сбор статистики по загружаемым с сервера файлам.
Ограниченную 14-дневную версию Berl Builder 2.0 размером 1.6Мб можно взять по адресу разработчика: http://www.solutionsoft.com/



Литература по CGI