Apache самый популярным web-сервер в мире

Введение
Apache - это веб-сервер, входящий в поставку RedHat Linux, да и многих других дистрибутивов Linux. Он с успехом работает и на многих других Unix'оподобных ОС: FreeBSD, Solaris, AIX и др., и также на Windows NT. Apache является самым популярным web-сервером в мире. Это бесплатный продукт, но несмотря на это, у него масса возможностей и он очень стабильный и быстрый. Поподробнее об этом всем можно почитать на Apache.Org, там же можно взять последнюю версию сервера. Данное руководство рассчитано на новичка, но и человек, уже имевший некоторый опыт работы с Apache, найдет здесь для себя что-нибудь полезное.:) В процессе написания данного документа использовался Apache версии 1.3.9, входящий в поставку RedHat 6.1, поэтому установку я описывать не буду, т.к. она очень проста, как и установка любого rpm-файла. Так что все, что здесь написано, относиться к версии Apache 1.3.9 и к RedHat Linux 6.1, но может быть с некоторыми модификациями применено и к другим версиям Apache и Linux'а.

Запуск

В каталоге /etc/rc.d/init.d есть файл httpd. Это скрипт для запуска демона httpd. Формат запуска у него такой:
--------------------------------------------------------------------------------

#Запустить httpd
/etc/rc.d/init.d/httpd start
#Остановить httpd
/etc/rc.d/init.d/httpd stop
#Перезапустить httpd
/etc/rc.d/init.d/httpd restart
#Посмотреть статус
/etc/rc.d/init.d/httpd status
--------------------------------------------------------------------------------

Естественно все эти действия должны производиться из-под root'а. Скрипт /etc/rc.d/init.d/httpd вызывает демон /usr/sbin/httpd. По умолчанию, демон вызывается без каких либо параметров. Но скрипт можно переделать, задав параметры. Параметры запуска у httpd такие:

-d каталог

Задает корневой каталог http-сервера. Может быть изменен с помощью директивы ServerRoot в файле конфигурации. По умолчанию /usr/local/apache (В RedHat Linux используется /etc/httpd).

-f файл

Показывает http-серверу использовать указанный файл в качестве файла конфигурации.

-С директива

Выполняет указанную директиву до просмотра файла конфигурации и выполнения его директив.

-c директива

Выполняет указанную директиву после просмотра файла конфигурации и выполнения его директив.

-D параметр

Устанавливает указанный параметр конфигурации, который может быть использован в секции <IfDefine>...</IfDefine> в файле конфигурации.

-h

Выводит небольшую справку по запуску httpd.

-l

Выводит список модулей, скомпилированных с сервером.

-L

Выводит список директив сервера вместе с возможными аргументами.

-S

Выводит установки из файла конфигураций.

-t

Проводит синтаксический анализ файла конфигураций.

-v

Выводит версию apache.

Проверить нормальный запуск можно, запустив Netscape на машине, где запускается Apache и просмотреть URL http://localhost. Должна появиться страница, начинающаяся словами It worked!.



Файлы конфигурации и логов

Файлы конфигурации Apache находятся в каталоге /etc/httpd/conf. Всего их три (но можно сделать больше или меньше :)):

httpd.conf

Это основной файл с конфигурационными директивами демона httpd. Имя файла может быть изменено опцией запуска -f.

srm.conf

Этот файл содержит директивы, управляющие содержанием документов, передаваемых клиенту. Имя файл может быть изменено директивой ResourceConfig.

access.conf

Содержит директивы, управляющие доступом к документам web-сервера. Имя файла может быть изменено директивой AccessConf.

Все файлы логов находятся в каталоге /etc/httpd/logs,являющемся линком на каталог /var/log/httpd. Файлы логов бывают двух видов: файл, в который записываются все сообщения об ошибках httpd (по умолчанию error_log, но может быть изменен при помощи директивы ErrorLog) и файл, содержащий все запросы на документы (html-файлы, gif-файлы и т.д.) ( по умолчанию access_log, но может быть изменен при помощи директивы TransferLog ).

Обновлено: 13.03.2015