¿Cómo puedo configurar VirtualHost sin reiniciar el servidor web Apache?

Respuestas:

15

Acabo de echar un vistazo a esta página, pero no estoy seguro de cuán relevante es para la suya.

Alojamiento virtual masivo configurado dinámicamente

La idea básica es reemplazar todas las configuraciones estáticas con un mecanismo que las resuelva dinámicamente. Esto tiene una serie de ventajas:

  1. Su archivo de configuración es más pequeño, por lo que Apache se inicia más rápidamente y usa menos memoria.
  2. Agregar hosts virtuales es simplemente una cuestión de crear los directorios apropiados en el sistema de archivos y las entradas en el DNS; no necesita reconfigurar o reiniciar Apache.

ACTUALIZAR

Agregar hosts virtuales sin reiniciar Apache

Resultó que la solución era usar VirtualDocumentRoot en lugar de la simple configuración de DocumentRoot para un solo host virtual. Esto permitió especificar la variable $ 0 como parte del valor. Así que terminamos pudiendo tener "VirtualDocumentRoot / somedir / $ 1".

Tigre
fuente
24

Haga cualquier cambio en su VirtualHosts, luego haga

apache2ctl configtest

Para asegurarse de que no haya errores de sintaxis pendientes, ejecute esto:

apache2ctl graceful

o

/etc/init.d/apache2 graceful

La señal USR1 o agraciada hace que el proceso padre aconseje a los niños que salgan después de su solicitud actual (o que salgan inmediatamente si no están sirviendo nada). El padre vuelve a leer sus archivos de configuración y vuelve a abrir sus archivos de registro. A medida que cada hijo muere, el padre lo reemplaza con un hijo de la nueva generación de la configuración, que comienza a atender nuevas solicitudes de inmediato.

Básicamente, las conexiones existentes permanecen intactas, por lo que no es lo mismo que un reinicio completo: así es como lo hago generalmente en servidores de producción con docenas de sitios.

meder omuraliev
fuente