Обзор каталогов Apache в Ubuntu Server


Управление процессами Apache

В процессе стандартной установки WEB-сервера Apache в Ubuntu создается следующая структура файлов и каталогов домашней директории веб сервера:

/etc/apache2/			        Домашняя директория Apache в Ubuntu - ServerRoot
conf-available					                                директория, содержит разные конфиги
    charset.conf                        файл для указания кодировок
    localized-error-pages.conf      	файл для задания страниц ошибок
    other-vhosts-access-log.conf        файл для задания логов виртуальных хостов
    security.conf                       файл для директив безопасности
    serve-cgi-bin.conf                  файл для директив конфигурации CGI
conf-enabled                            директория, содержит ССЫЛКИ на активированные конфиги из conf-available
  @                                     ССЫЛКИ на активированные конфиги из conf-available
mods-available                          директория, содержит конфиги установленных модулей Apache
  ...                                   доступные конфиги модулей Apache
mods-enabled                            директория, содержит ССЫЛКИ на активированные конфиги модулей из mods-available
  @                                     ССЫЛКИ на активированные конфиги модулей Apache
sites-available                         директория содержит доступные конфиги виртуальных хостов
   000-default.conf                     файл виртуального хоста по умолчанию для 80 порта, создан при инсталляции Apache
   default-ssl.conf                     файл виртуального хоста по умолчанию для порта 443, создан при инсталляции Apache
sites-enabled                           директория, содержит ССЫЛКИ на активированные конфиги виртуальных хостов из sites-enabled
   @000-default.conf                    ссылка на активированный конфиг виртуального хоста
   apache2.conf                         ГЛАВНЫЙ конфиг web сервера Apache в Ubuntu
   envvars                              файл с настройками путей для окружения Apache
   magic                                Файл скриптов для модуля mime_magic (этот модуль не активен по умолчанию)
   ports.conf                           файл для задания портов на которых будет принимать подключения Apache

Управление процессами Apache

server config - глобальный уровень директивы для применения в файлах общей конфигурации сервера вне <VirtualHost> и вне <Directory> контейнеров и вне файла .htaccess;

virtual host - уровень виртуального хоста для применения директивы в <VirtualHost> контейнере;

directory - уровень каталога, директива должна использоваться внутри контейнеров <Location>, <Files>, <If>, <Proxy>;

.htaccess - уровень локального каталога сайта, директива может применяться в файле .htaccess.

Команды управления конфигурацией

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

Команды a2enconf/a2disconf

Для включения или выключения нужного конфига из каталога conf-available в конфигурацию сервера используйте команды: a2enconf/a2disconf.

Включить конфиг:

a2enconf myconf.conf

Выключить конфиг:

a2disconf myconf.conf

Команды a2enmod/a2dismod

Для активации установленного модуля Apache из каталога mods-available и деактивации его используйте команды: a2enmod/a2dismod.

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

a2enmod <mod-name из mods-available>

Выключить модуль Apache:

a2dismod <mod-name из mods-available>

Команды a2ensite/a2dissite

Для активации конфигурации виртуального хоста из каталога sites-available и деактивации его используйте команды: a2ensite/a2dissite.

Включить виртуальный хост в Apache:

a2ensite <vhost-config-file-name без суффикса .conf из sites-available>

Выключить виртуальный хост в Apache:

a2dissite <vhost-config-file-name без суффикса .conf из sites-available>

Команды управления Apache

В Ubuntu, благодаря использованию переменных среды, для обращения к демону httpd web сервера можно применять вызовы вида: /etc/init.d/apache2 или apache2ctl или apache2::

/etc/init.d/apache2 [command | httpd-argument]

Или:

systemctl [command | httpd-argument]

Или:

apache2 [httpd-argument]

Команды systemctl и apache2 имеют разный синтаксис аргументов, однако утилита systemctl способна обрабатывать как свои собственные команды, так и команды предназначенные для apache2 и поэтому является более универсальной.

Команды для утилиты systemctl

Запуск Apache2:

systemctl start apache2

Остановка Apache2:

systemctl stop apache2

Перезапуск Apache2:

systemctl restart apache2

Вывести статус Apache2:

systemctl status apache2

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

systemctl disable apache2

Чтобы добавить Apache в автозагрузку, используйте эту команду:

systemctl enable apache2