Как я могу настроить VirtualHost без перезапуска веб-сервера Apache?

Ответы:

15

Я только что взглянул на эту страницу, но не уверен, насколько она важна для вас.

Динамически настраиваемый массовый виртуальный хостинг

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

  1. Ваш файл конфигурации меньше, поэтому Apache запускается быстрее и использует меньше памяти.
  2. Добавление виртуальных хостов - это просто вопрос создания соответствующих каталогов в файловой системе и записей в DNS - вам не нужно перенастраивать или перезапускать Apache.

ОБНОВИТЬ

Добавление виртуальных хостов без перезапуска Apache

Оказалось, что решением было использовать VirtualDocumentRoot вместо простого старого параметра DocumentRoot для одного виртуального хоста. Это позволило указать переменную $ 0 как часть значения. Таким образом, мы получили «VirtualDocumentRoot / somedir / $ 1».

TigerTiger
источник
24

Внесите любые изменения в свои виртуальные хосты, затем выполните

apache2ctl configtest

Чтобы убедиться, что нет синтаксических ошибок, выполните следующее:

apache2ctl graceful

или

/etc/init.d/apache2 graceful

Сигнал USR1 или изящный заставляет родительский процесс посоветовать детям выйти после их текущего запроса (или немедленно выйти, если они ничего не обслуживают). Родитель перечитывает свои файлы конфигурации и заново открывает файлы журналов. Когда каждый дочерний элемент умирает, родитель заменяет его дочерним элементом конфигурации нового поколения, который немедленно начинает обслуживать новые запросы.

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

медер омуралиев
источник