Как протестировать сайт, содержащий SSI и CGI, на своем компьютере под
Windows? Да очень просто - пора заводить себе сервер...
Уже давно стало привычным, что большинство
сайтов представляют собой не множество статичных HTML-страниц, имя которым -
легион, и редактировать которые на разросшемся сайте - сплошное мучение, а
динамически генерируемый контент. И любой веб-мастер, поддерживающий живой сайт компании, рано или поздно
приходит к выводу, что пора процесс неконтролируемого деления страничек
прекращать.
Понятное дело, что уговорить руководство
вкладывать сотни или тысячи у.е. в развитие корпоративного веб-сайта
бессмысленно: во-первых, очень невелика вероятность окупаемости, а во-вторых,
зачастую такой вариант принесет лишь тотальную зависимость от разработчика
движка - чуть какой глюк, и ищи его с утра пораньше: Но довольно ощутимо
облегчить себе труд все равно можно. Для этого уже давно существуют две
технологии - SSI(Server Side Includes) и CGI (Common Getaway Interface). С
помощью SSI вы избавите себя от нужды перелопачивать тонны страничек с целью
добавить в них ссылку на новый раздел или заменить номер факса компании, а
использование CGI-скриптов может придать сайту изрядную долю интерактивности в
лице форума или гостевой книги, или даст возможность сделать авторизированный
доступ к разделу. Но тут появляется одна загвоздка - если "обычный"
HTML-сайт можно писать и тестировать хоть на любимом стареньком ноутбуке под
Win3.1, то применение SSI-директив или скриптов на Perl требует тестирования на
сервере. А если сервер стоит не у вас в конторе, а лежит где-то у провайдера, то
подобное тестирование может обернуться еще большими проблемами (в особенности,
если вы смутно знаете, что такое httpd и как редактировать httpd.conf, если вас
еще к нему допустят). Тут встает вопрос об установке простого в конфигурировании
веб-сервера под Windows.
Когда передо мной встала такая задача, я решил
не связываться с продуктами горячо любимой MS, а поискать альтернативные
решения. И нашел их целых два...
После недолгого блуждания по download-серверам
отыскалась чудная программка Максима Феоктистова Small HTTP
Server. Я даже думаю, что автор немного поскромничал - вполне можно было
назвать и Smallest, так как весит сервер всего:28Кб! И при таком крохотном
размере она спокойно поддерживает нехилый набор возможностей:
- Поддержка методов GET и POST HTTP/1.0
- Одновременная передача данных и прием запросов от нескольких удаленных
пользователей.
- Запуск CGI-скриптов: PE *.exe Windows формат; MZ *.exe и *.com DOS форматы
(только Win95/98); запуск perl-скриптов через запуск внешнего
Perl-интерпретатора; обработка phtml-страниц через запуск внешнего
PHP-интерпретатора; запуск приложений ассоциированных с типами файлов Windows.
- Server Side Includes (SSI).
- Internet Server Applications (ISA).
- Динамический вывод информации об обработанных запросах. Протокол может
сохраняется на диске.
- Плюс - виртуальный хостинг, HTTP Proxy сервер и простой DNS
сервер.
Программа очень легко настраивается при
установке, а кроме того, любой параметр всегда можно изменить при запуске в
режиме командной строки или написать несколько конфигурационных файлов с
необходимыми настройками на все случаи применения. Этот сервер сослужил мне
отличную службу на первом этапе разработки сайта, когда отлаживался режим работы
SSI. С запуском EXE-скрипта на С проблем тоже не возникло, однако мне так и не
удалось заставить работать Перл-скрипт. Данные из формы куда-то уходили и
отображались в окошке мониторинга, но вот до скрипта они явно не добирались.
Сначала я думал, что скрипт кривой, так как программист я тот еще, а уж в Перле
с его закорючками вообще сходу без пол-литра (пива:)) никак, но после проверок
20 я плюнул и решил обратиться к "истокам".
А истоком, точнее, конечным местом дислокации
сайта, являлся один известный всем индеец из рода Апачей www.apache.org.
Дистрибутивов под разные платформы у него великое множество, ну и про Форточки
тоже не забыли.
Ставится Апач легко и быстро, работает в ДОСовском окошке, но весит уже поболе
своего предшественника по экспериментам - около 4Мб со всей документацией и
модулями. Человеку, не видевшему Юникс или, на худой конец, ДОС, может
показаться странным, что после установки сервер запускаться откажется. Но
торопиться с переустановкой не следует - просто учитесь читать инструкцию до, а
не тогда, когда больше ничего не помогает. Вся настройка сервера осуществляется
путем редактирования файла httpd.conf (и, немного, mime.types) в поддериктории
conf. В принципе, любой веб-мастер, более-менее разбирающийся в принципах
функционирования веб-серверов и владеющий английским, сможет минут за 15-20 все
корректно настроить. Если же что-то не получается, то на большую часть вопросов
ответ можно найти здесь. Апач является полнофункциональным веб-сервером и будет
поддерживать практически все, что вам будет нужно (если, конечно, вы
ориентируетесь на *nix платформу) - при желании, можно оставить сервер крутиться
и под Win95, лишь бы не висла:)
[1] - Я имею ввиду сайт, который обновляется не
реже трех раз в неделю и имеет 40-70 посетителей в день - вполне типичная
картина для большинства корпоративных сайтов.
Литература по серверам: разное
|