Общий способ подключения и загрузки модулей в Apache

В этой статье рассмотрим общий стандартынй способ подключения и загрузки модулей в веб-сервере Apache.

В новых версиях веб-сервера Apache используется общая стандартизированная методика подключения модулей, виртуальных хостов и т.д. Способ довольно простой, но для новичков требуются некоторые разъяснения, которые и идут ниже в этой статье.

В папке «mods-available» находится текстовый файл, который и подключает сам модуль (библиотеку с расширением so). Содержимое у этого файла примерно такое:

LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so

Т.е. в нём задана лишь одна директива «LoadModule» с передачей названия и пути библиотеки модуля. Можно конечно по-старинке просто записать эту строку в общий конфигурационный файл «apache2.conf», но лучше сделать всё по-нормальному.

Для загрузки модулей есть директория «mods-enabled» в которой находятся ссылки (ярлыки) на соответсвующие файлы в директории «mods-available», который, как мы выяснили ранее, содержат директивы подключения модулей (библиотек, бинарных файлов с расшрением so). В главном конфигурационном файле «apache2.conf» есть такие директивы/инструкции:

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

Т.е. сканируется директория «mods-enabled» и подключаются все модули, которые есть в ней, т.е. ссылки на файлы подключения модулей. Короче говоря, чтобы подключить модуль надо в папку «mods-enabled» добавить ссылку на файл-загрузчик (подключатель) этого модуля из папки «mods-available». Если модуль надо дополнительно настроить, то файл конфигурации модуля кладётся в папку «mods-available» и на него делается ссылка находящаяся в папке «mods-enabled». Названия ссылок роли не играют, но пути, куда указывает ссылка, должны быть правильными и расширения допускаются только «load» и «conf». Ссылки принято называть также как и файл на который они указывают.

Сам загрузчик модуля лежит тут «/etc/apache2/mods-available/remoteip.load». Надо добавить на него ссылку и положить в папку «mods-enabled». В папке «mods-enabled» создаём ссылку с названием «remoteip.load» указывающую на файл «/etc/apache2/mods-available/remoteip.load». Имеющиеся там по-муолчанию ссылки имеют относительные пути. Правильнее задавать относительные пути, поэтому в пути ссылки задаём «../mods-available/remoteip.load».

Если нужно настроить модуль, то делать всё по аналогичной схеме описанной выше, т.е. в папке «mods-available» создать файл «remoteip.conf», добавить в него необходимое содрежимое и папке «mods-enabled» создать ссылку под названием «remoteip.conf» указывающая на файл конфигурации модуля так «../mods-available/remoteip.conf».

Не забывайте сохранять изменения и перезагружать веб-сервер, чтобы они вступили в силу.