Апачи выходят на тропу войны

Алексей ШАРАДКИН

 

Допустим, что Вы уже создали свою страничку и даже выложили ее где-то. Естественно, со временем у вас могут возникнуть идеи по дальнейшему ее усовершенствованию. Но, к сожалению, у Вас нет возможности часами сидеть в он-лайн, редактируя скрипты и приложения. Или, предположим, Вам нужно развернуть Intranet. Или же Вы хотите просто поиграться ?. В любом из этих случаев понадобится развернуть web-server. Из всего разнообразия рекомендовал бы попробовать Apache.


И тому есть несколько причин:
? мощный, гибкий web-server;
? базируется на самых последних протоколах, включая HTTP/1.1 (RFC2616);
? легко настраивается и расширяется с помощью модулей сторонних разработчиков;
? может настраиваться с помощью "модулей", написанных с использованием Apache module API;
? снабжается исходными кодами и бесплатной лицензией;
? существуют версии под Windows NT/9x, Netware 5.x, OS/2, большинство версий Unix, а также под другие системы;
? имеет действующую обратную связь с пользователями для обнаружения и устранения багов;
? позволяет выполнять привязку к большинству широко известных СУБД;
? крайне непритязателен к аппаратному обеспечению — у меня прекрасно работает на P-166 и 16 Mб ОЗУ (сравните с требованиями IIS :-)).
Ко всему прочему, Apache — самый распространенный, популярный, но не попсовый, web-сервер в мире. По данным компании Netcraft (http://www.netcraft.com/Survey), общее число web-узлов, работающих под его управлением, уже к концу 1998 г. достигло 2 млн. (55 % общего числа узлов) и постоянно увеличивается. Если не верите, сравните: на долю серверов Microsoft приходится 25 %, Netscape — 7 %. Будучи бесплатной открытой программой, Apache по функциональным возможностям и надежности не уступает коммерческим серверам, а широкие возможности конфигурирования позволяют Вам настроить его для работы практически с любой конкретной системой. Отрадно, что существуют локализации сервера для различных языков, в том числе и для русского. Ну ладно, лично у меня от этих разговоров ручки чешутся что-то сделать. Для начала скачаем Apache for Windows 1.3.12 (ftp://ftp.ccai.com/apache/dist/binaries/win32/apache_1_3_12_win32.exe, 3.03 Мб).

Инсталляция
Запустите скачанный ранее .exe’шник. При установке у Вас поинтересуются:
? по поводу директории установки (по умолчанию — C:\Program Files\Apache Group\Apache, но все в Ваших руках);
? о названии пункта меню (по умолчанию — Apache Web Server).
? о типе инсталляции: "Typical" — полная, за исключением исходного кода, "Minimum" — версия без мануалов и исходников, "Custom".
Во время инсталляции Apache сконфигурирует файлы в директории conf для выбранной вами директории установки. Причем предусмотрительный индеец не удаляет исходный файл, а значит, если Вы при настройке допустили ошибку, "мосты еще не все сожжены", можно вернуться к рабочей версии. Файл, который позволяет конфигурировать Apache, называется httpd.conf и находится в директории conf. Его версия, устанавливаемая по умолчанию, станет носить имя — httpd.conf.default — и храниться в том же каталоге.
Но, с другой стороны, если в папке \htdocs\ уже имеется файл index.html, никто его не переименует.
Все вышесказанное обнадеживает — Вы, ничем не рискуя, переустановите Apache, нужно только перед запуском программы инсталляции остановить существующий сервер.
Итак, Apache у вас обосновался — редактируя файл httpd.conf, можете приступить к его настройке, но об этом чуть позднее.

Запуск Apache под Windows
У Вас есть несколько способов запустить Apache:
? как service (возможно, только под Windows NT/2000). Данный вариант позволит запускать Apache при загрузке машины.
? как консольное окно. Это все, что доступно для пользователей Windows 95/98, а также необходимый шаг для обладателей Windows NT/2000, желающих получить Apache в варианте service.
Чтобы запустить Apache в консольном окне, выберите Start Apache as console app. После этого раскроется консольное окно, и Вы увидите своего индейца внутри него. Это окно будет оставаться открытым в течение всего времени работы сервера. Для остановки выберите Shutdown Apache console app.
Если окно Apache захлопывается сразу или не открывается вообще, перейдите в командную строку и сделайте приблизительно следующее:
c:
cd "\program files\apache group\apache"
apache
Wait for Apache to exit, or press Ctrl+C
cd logs
more <error.log
После этого Вы сможете прочитать в файле error.log, что же собственно происходит, и почему программа не работает.
После запуска индеец будет "слушать" 80-й порт (если Вы не измените это в файле httpd.conf). Для соединения с сервером и запуска страницы по умолчанию, запустите браузер и введите следующий URL:
http://localhost
После чего Вы непременно увидите страницу по умолчанию и ссылку на мануал. Если же ничего подобного не наблюдается, проверьте файл error_log в директории logs. Когда Ваш хост не присоединен к Сети, можно использовать следующий URL:
http://127.0.0.1
После такой "первоначальной" настройки с помощью файла httpd.conf приступайте к конфигурированию Apache под конкретные задачи.
Из-за того, что данный web-сервер не в состоянии расшарить одинаковые порты с любым другим приложением TCP\IP, придется предварительно остановить или деинсталлировать данные приложения. В первую очередь, это относится к другим web-server’ам. В противном случае, сконфигурируйте Apache или приложение так, чтобы они слушали разные порты.

Настройка Apache
Перво-наперво в директории conf найдите и откройте в любом текстовом редакторе файл httpd.conf. Множество строк, начинающихся со значка "#", практического значения не имеют и используются, в основном как разделитель. Поэтому если возникли какие-либо вопросы, которых мы с Вами в статье не коснулись, милости просим сюда: http://httpd.apache.org/docs/index.html.en.
Итого: ниже указаны переменные, которые оказывают непосредственное влияние на работу сервера, и могут потребоваться для настройки.
? ServerType standalone. Может быть или inetd (возможен только на Unix-платформах), или standalone.
? ServerRoot "C:/Program Files/Apache Group/Apache". Директория, где хранятся файлы конфигурации, ошибок и лог-файлы.
? PidFile logs/httpd.pid. Файл, где указывается идентификационный номер процесса.
? Timeout 300. Указывает количество секунд до посылки time out.
? Port 80. Порт, слушающий сервер в режиме standalone.
? ServerAdmin you@your.address. Адрес, куда можно посылать сообщения об ошибках на сервере.
? ServerName localhost. Указывает URL, по которому можно выйти на локальный сервер: http://localhost
? DocumentRoot "D:/webroot/htdocs". Переменная указывает на директорию, где хранятся файлы web-сайта. Рекомендуется хранить последние не в каталоге — по умолчанию, а в любом другом с названием htdocs и путем вроде следующего: D:/webroot/htdocs.
И соответственно, ссылку: <Directory "D:/webroot/htdocs"> нужно установить на тот же каталог.
? DirectoryIndex index.html. Указывает на название файла, загружаемого по умолчанию.
? ErrorLog logs/error.log
Сообщает, где находится файл ошибок.

 


© журнал принадлежит Web Creation
по всем вопросам обращаться А. Кузьмин