Запуск и отладка Perl-программ и CGI-скриптов под Windows
Данная статья будет полезна не только хозяевам домашних страниц, но также мелким и средним коммерческим компаниям, имеющим в арсенале одним из инструментов сбыта товаров и услуг электронные издания в виде узкоспециализированных сайтов.
Типичный портрет привычного сайтовладельца включает в себя ПК под Windows с удаленным доступом к Internet и размещенный сайт под unix-совместимыми системами.
Учитывая все еще высокую стоимость работы в Сети, многим приходится изготавливать ресурсы у себя на компьютере, просматривать их браузером и лишь затем выкладывать на хост-сервер. Если структура контента состоит из множества каталогов, то браузером невозможно увидеть сайт во всем его многообразии.
Для преодоления этого препятствия можно установить и сервер Apache под Windows, но для большинства случаев достаточно воспользоваться замечательной утилитой, разработанной в Rit Labs под названием Tiny Web (размер ее в упакованном виде не превышает 100 Кб).
Скачать программу можно с сайта разработчика по адресу:
. Для ее успешной работы под Windows 95 -98 требуется установка TCP-IP протокола в разделе "Сеть" Панели управления. Инсталляции TinyWeb не требуется, достаточно создать bat-файл в директории, где будет лежать исполняемый файл программы.
Сам "батник" содержит одну строку вида "d:wwwin iny.exe d:www", где параметром служит директория с расположением файла первой страницы сайта index.html (там должен быть и весь сайт со структурой каталогов).
После запуска bat-файла запускаем браузер и в адресной строке набираем
. Если у вас на сайте используются абсолютные ссылки, то их следует сменить на короткие относительные (относительно домашнего каталога сервера владельца хостинга).
Теперь перейдем к вопросу о запуске CGI-скриптов.
Для этого необходимо скачать и установить интерпретатор ActivePerl под Windows. У меня стоит 519 build; возможно, есть более новая версия. Поискать все это можно по адресам: , . Размер установочного файла чуть больше 8 Мб, и для правильной работы дополнительно требуется: под WinNT Service pack 5+ или выше, под Windows 95-98 Microsoft Windows Installer (можно взять по адресу ), для владельцев 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 и т.д.).
Перед запуском скриптов (даже готовых) их необходимо настроить на локальное использование, заменив адрес сайта на ( ). Физический путь к файлам на диске надо указать таким, каким он виден вам на вашем компьютере (напр. d:www, т.е. путь к файлам сайта в папке с TinyWeb). В основной массе бесплатных, свободно распространяемых CGI в тексте скрипта почти всегда есть такие настройки.
Отладка Perl и CGI довольно капризная вещь, даже на родных unix-системах это довольно трудоемкий процесс. Существуют программные средства, которые могут частично справиться с этой задачей. К примеру, по адресу лежит пакет Perl Dev Kit, в котором встроен свой отладчик, позволяющий выполнять элементарные операции типа "по шагам", "к точке останова" и т.д. Вообще, на этом можно было бы закончить повествование, но законы экономики диктуют свои условия: спрос рождает предложение. Поэтому мы можем воспользоваться уже второй версией Perl Builder, от Solution Soft, которая позволяет делать не только отладку CGI-скриптов под Windows, но и заменяет стандартный набор утилит Unix под DOS (о чем говорилось выше).
Программа содержит внутренний интерфейс заполняемых форм, что позволяет отладить даже методы Get и Post, используемые в формах сайтов.
Есть просмотр значений переменных (watch list), инициализация значений, точки останова и прочие особенности нормального отладчика. Всю информацию, выводимую CGI-скриптом, можно просмотреть в браузере.
К примеру, у меня вполне нормально отрабатывал скрипт поиска по сайту и сбор статистики по загружаемым с сервера файлам. Ограниченную 14-дневную версию Berl Builder 2.0 размером 1.6Мб можно взять по адресу разработчика: .