Отладка web-сайтов (Apache + Windows'XP SP2) |
17 ноября 2004 г. Новиков М.Г. |
Для отладки сайтов в домашних условиях чаще всего используют http-сервер Apache. С помощью него создаются виртуальные серверы для каждого отлаживаемого сайта, благодаря чему последние выполняются в той-же среде, в которой будут выполняться у хостера. С помощью виртуальных серверов удобно отлаживать сайты на cgi-скриптах, и т.п. На момент написания этой статьи последней версией этого сервера была Apache
2.0.52. Оглавление: Глава 1.Решение проблемы виртуальных серверов Apache под Windows
XP SP2 Глава 1. Решение проблемы виртуальных серверов Apache под Windows XP SP2После апгрейда операционной системы до Windows XP SP2, перестают работать созданные в файле конфигурации Apache виртуальные серверы. Это происходит из-за ошибки в файле tcpip.sys. Существует официальный патч от Майкрософт под номером KB884020, который можно скачать тут: Но, к сожалению, патч этот ставится только на лицензионные копии Windows XP. У меня, например, он в процессе инсталляции зависал и завешивал машину. Установка на неактивированную Windows XP приводила к тем же результатам. (Недавно мне сказали, что патч надо было ставить в безопасном режиме, тогда он поставится. К сожалению я уже не помню, в каком режиме я его пытался поставить.) Однако вышеописанную ошибку tcpip.sys можно обойти. Ошибка такова, что перестают работать все IP-адреса обратной петли кроме адреса 127.0.0.1. По соглашению об IP-адресах, когда данные посылаются по адресу с первым байтом равным 127, например, 127.0.0.3, то образуется как бы «петля». Данные не передаются по сети, а возвращаются модулям верхнего уровня протокола TCP/IP как только что принятые, что и нужно при локальной отладке сайтов. Таким образом, мы можем получить доступ к своему сайту только через единственно рабочий IP 127.0.0.1. Для этого изменим 2 файла: 1. В конфигурационном файле Apache «htpd.conf» (лежит в подкаталоге «conf») раскомментируем параметр NameVirtualHost *:80 и вместо IP-адресов в описании виртуальных серверов поставим звездочку — *, например: <VirtualHost *> 2. В файле C:/WINDOWS/system32/drivers/etc/hosts все перечисленные там IP-адреса изменим на 127.0.0.1: 127.0.0.1 localhost Перезапускаем Apache — и все начинает работать, как прежде. Глава 2. Установка Apache 2.0.52 для отладки сайтов под Windows XP SP2После запуска инсталляции в поле «Network Domain» вводим localhost, в поле «Server Name» вводим localhost, а в поле «Administrator's EMail Address» вводим ваш E-Mail. Опцию в нижней части окна оставляем по умолчанию — пусть сервер запускается как служба при загрузке системы, и работает для всех пользователей компьютера. После этого устанавливаем Apache в папку по умолчанию в типичной конфигурации. После инсталляции сервис http-сервера Apaxhe запускается автоматически, а на пенели справа появляется его значок. Теперь исправим файл конфигурации. Через Пуск -> Программы -> Apache HTTP Server 2.0.52 -> Configure Apache Server -> Edit the Apache htpd.conf Configuration File открываем текстовый файл и правим следующие параметры: DirectoryIndex — добавляем index.htm (имя запускного файла). В 3 секцию добавляем виртуальные серверы, столько, сколько нужно: <VirtualHost *:80> <VirtualHost *:80> <VirtualHost *:80> (Последний виртуальный сервер берет все параметры из основной секции файла, и запускается по вызову localhost). После этих манипуляций сохраняем файл, щелкаем на значке сервиса в панели и нажимаем Apache2 -> Restart. Сервер перезапустится с новыми настройками. Сервер установлен. Теперь открываем файл WINDOWS/system32/drivers/etc/hosts и пишем туда имена наших виртуальных серверов: 127.0.0.1 localhost После его сохранения новые настройки сразу вступают в силу, и вы сможете вызывать ваши сайты по именам их виртуальных серверов. Если ваши сайты используют cgi-скрипты, то потребуются дополнительные изменения в файле htpd.conf, независящие, однако, от наличия в системе обновления SP2. Статей по настройке Apache для работы с PHP, Perl и MySQL и т.п. достаточно много в Интернете, например, здесь: http://www.zeiss.net.ru/docs/design/index.htm. Существует также т.н. «Джентельменский набор Web-разработчика» («Д.н.w.р», читается «Денвер» — почти как название города) — набор дистрибутивов, используемый Web-разработчиками (программистами и дизайнерами) для отладки сайтов на «домашней» (локальной) Windows-машине без необходимости выхода в Интернет. Качайте его с http://www.denwer.ru/. Там же описание по его установке. |
|
[Вернуться в начало] |
[Оставить отзыв в гостевой] |