¿Cuál es la diferencia entre el directorio habilitado para sitios y el directorio disponible para sitios?

Respuestas:

102

La diferencia es que los sitios virtuales enumerados en el sites-enableddirectorio son servidos por Apache. En el sites-availabledirectorio están los sitios virtuales que existen en su servidor, pero las personas no pueden acceder a ellos porque aún no están habilitados .

sitios disponibles: este directorio tiene archivos de configuración para los hosts virtuales Apache2. Los hosts virtuales permiten que Apache2 se configure para varios sitios que tienen configuraciones independientes.

sitios habilitados: al igual que los mods habilitados, los sitios habilitados contienen enlaces simbólicos al directorio / etc / apache2 / sites-available . De manera similar, cuando un archivo de configuración en sitios disponibles tiene un enlace simbólico, el sitio configurado por él estará activo una vez que se reinicie Apache2.

Vea aquí https://help.ubuntu.com/lts/serverguide/httpd.html

A B C
fuente
28
¿Debo editar archivos en sitios habilitados o en sitios disponibles ?
user3448600
29
@ user3448600 debe editar archivos en sitios disponibles
ABC
2
si esos son enlaces simbólicos, no importa cuál edites
Buksy
5
@Buksy En realidad, importa, si está utilizando el editor nano. Vea mi respuesta para más detalles.
viniciussss
90

Información importante:

Debe editar archivos solo en el sites-availabledirectorio.

Nunca edite archivos dentro del sites-enableddirectorio, de lo contrario puede tener problemas si su editor se queda sin memoria o, por cualquier motivo, recibe un SIGHUP o SIGTERM.

Por ejemplo: si está utilizando nanopara editar el archivo sites-enabled/defaulty se queda sin memoria o, por cualquier motivo, recibe un SIGHUP o SIGTERM, entonces nanocreará un archivo de emergencia llamado default.save, dentro del sites-enableddirectorio. Entonces, habrá un archivo adicional dentro del sites-enableddirectorio. Eso evitará que Apache o NGINX se inicien. Si su sitio estaba funcionando, ya no lo estará. Lo pasarás mal hasta que encuentres, en los registros, algo relacionado con el default.savearchivo y, luego, lo elimines.

En el ejemplo anterior, si estuviera editando el archivo dentro del sites-availabledirectorio, no habría ocurrido nada malo. El archivo sites-available/default.savese habría creado, pero no haría ningún daño dentro del sites-availabledirectorio.

viniciussss
fuente
6

Usted configura su sitio mysitecreando o editando el archivo mysite.confen sites-available(también puede configurar varios sitios en el mismo archivo .conf, si lo prefiere).

Después de esto, para publicar el sitio debe crear el enlace simbólico correspondiente en formato sites-enabled. En Ubuntu puedes hacerlo así:

a2ensite mysite(con sudo, si es necesario; y sin el .conf final)

Y luego debes volver a cargar Apache:

sudo service apache2 reload

Posteriormente, si desea modificar la configuración, solo toque el mysite.confin sites_available. Los cambios se aplican automáticamente en sites_enabled, a través del enlace simbólico. Solo recuerda recargar Apache.

Gregorio
fuente