Apache/ru

HTTP-сервер Apache — это эффективный и расширяемый веб-сервер, а также один из самых популярных веб-серверов в Интернете.

Поддержка в других пакетах
There is a global USE flag  which enables support for Apache in other packages. This may cause to be pulled in automatically if a package depending on Apache is emerged.

After configuring the  variable, update the system so the changes take effect:

OpenRC
Запуск сервера Apache:

Добавление Apache в уровень исполнения по умолчанию:

Перезапуск службы Apache:

Перезагрузка конфигурационных файлов Apache:

systemd
Запуск сервера Apache:

Добавление Apache в уровень исполнения по умолчанию:

Перезапуск службы Apache:

Тестирование
Verifying IP interfaces and ports on which Apache2 is running on and listening to:

Проверка, есть ли соединение с запущенным на localhost'е сервером Apache:

Тестовое соединение можно разорвать нажатием + и.

Конфигурационные файлы
Существуют 2 основных файла, которые настраивают поведение Apache2 в системе:


 * Gentoo's Apache2 init script configuration file


 * Apache2 server's conventional configuration file

Конфигурационный файл сценария инициализации Gentoo
Единственная действующая строка в этом файле приведена ниже:

Эта строка определяет параметры, которые будут переданы различным конфигурационным файлам, использующим выражение  для включения или отключения некоторой части настроек. Мы вернёмся к ним там, где это уместно: в конце этого руководства.

Стандартный конфигурационный файл сервера Apache — httpd.conf
Этот файл на самом деле является лишь точкой входа, так как вся конфигурация разбита на множество файлов в каталоге, которые собираются вместе посредством директивы. Например, директива  в  предназначена для включения всех файлов из, имя которых оканчивается на.

Принимая во внимание то, о чём говорилось в предыдущем разделе, и то, что конфигурационные файлы модулей (файлы в ) почти всегда начинаются с, получаем, что содержимое одного файла в  будет объединено с остальной конфигурацией ТОЛЬКО в том случае, если соответствующий параметр установлен с помощью флага   в переменной APACHE2_OPTS в файле. Конфигурационный файл является исключением из этого правила, так как не начинается с выражения   и, следовательно, всегда включается в конечную конфигурацию.

Настройки по умолчанию
After a fresh install of an Apache server, the configuration resulting from the assemblage of the different configuration files is as follows. We start with the entry point.

Первые признаки жизни
Как можно видеть из приведённой выше первоначальной конфигурации, предварительно установленным каталогом для виртуального хоста  является, именем соответствующего сервера — localhost. К тому же в каталог для  устанавливается файл index.html, так что, чтобы проверить всё ли правильно установлено, можно направить браузер на http://localhost/.

На этой странице вы должны увидеть сообщение "It works !".

Включение модуля безопасности
Для управления этим модулем нужно редактировать файлы и  и перезапускать apache.

Включение поддержки PHP
Install PHP with the  USE flag and enable the module:

Перед тем как проверить, работает ли модуль PHP, убедитесь, что файл существует и содержит следующее определение:

Если данного файла нет, то создайте его.

Чтобы проверить, работает ли модуль PHP, создайте тестовую страницу:

Теперь удалите или переименуйте и откройте тестовую страницу: http://localhost/. Вы должны увидеть таблицу, показывающую настройки PHP.

Добавление собственных виртуальных хостов
Для каждого виртуального хоста необходимо иметь каталог, который демон Apache сможет открыть и прочитать. Добавьте файл конфигурации виртуального хоста в каталоге, который будет использовать данный   и данное имя сервера виртуального хоста, а также не забудьте добавить запись для данного доменного имени в.

To assign the apache user/group ownership on the virtual host files, use chown like in the following example:

Ниже приведены два примера определения виртуальных хостов, один для domainname1.com, а второй для domainname2.com. Обратите внимание, что директивы  и   различаются, хотя сам хост  один и тот же:

Также рекомендуется дать определение виртуального хоста на основании IP. Это позволит администратору оставить сообщение пользователям, которые пытаются зайти на сайт по IP-адресу:

После добавления новых хостов сервер нужно (мягко) перезапустить, чтобы новые сайты стали активны.

Включение PHP через fcgid
Install and. The PHP package requires  to be set as a USE flag:

Отредактируйте файл :

Создайте необходимые каталоги:

Сделайте символическую ссылку для PHP-wrapper:

Включите модуль fcgid:

В конце перезапустите Apache и проверьте сайт, который мы создали раньше. Значение  должно быть CGI/FastCGI

Включение PHP-FPM через mod_proxy_fcgi в Apache 2.4
PHP, начиная с версии 5.3, поддерживает дополнительный режим — FastCGI Process Manager или FPM.

Конфигурация данного метода основана на директиве FilesMatch и располагается непосредственно в главном конфигурационного файле или в конкретных VirtualHost’ах. Расположение UNIX-сокета определяется директивой listen в файле с возможностью указать различные UNIX-сокеты для различных сайтов или функций.

Далее следует пример, в котором настройки размещены в конфигурационном файле PHP-модуля:

Затем подключите модули PHP и proxy:

Устранение проблем

 * Руководство по устранению проблем

Стандартные неполадки
При запуске apache вы можете получить следующие сообщения об ошибках:

apache2: apr_sockaddr_info_get failed for SomeHostname

Когда это происходит, добавьте имя вашего хоста в файл.

Смотрите также

 * Lighttpd — быстрый, легковесный веб-сервер.
 * Nginx — небольшой, надёжный и высокопроизводительный HTTP-сервер.

Внешние ресурсы

 * статья Slicehost: Установка Apache в Gentoo
 * статья Slicehost: Конфигурационые файлы Apache в Gentoo
 * статья Slicehost: Настройка Apache MPM в Gentoo
 * статья Slicehost: Настройка Apache в Gentoo
 * статья Slicehost: Виртуальные хосты Apache в Gentoo
 * статья Slicehost: Включение и использование модуля apache mod_status в Gentoo
 * документация apache.org
 * Apache2 mod_pagespeed