¿Puedo duplicar la configuración de mi servidor Apache en una nueva instalación de Linux?

¿Puedo duplicar la configuración de mi servidor Apache en una nueva instalación de Linux?

Tengo un servidor Apache 2 configurado en mi computadora que uso para pruebas locales. Para ser claro, esnoAlojamiento de sitios en Internet. Es solo para diseño y depuración local.

Estaba usando Ubuntu Linux, pero ahora tengo una computadora nueva que usa Linux Mint. Lo que me gustaría hacer es tomar todos los sitios y configuraciones de Apache que tengo en la antigua máquina Ubuntu y reproducirlos en la nueva máquina Linux Mint.

Sólo sé cómo hacer esto manualmente, un sitio a la vez, empezando desde cero. Crear un archivo para cada sitio en el sites-availabledirectorio y activarlos con a2ensite. Y luego editar cualquier archivo de configuración, como agregar algunas líneas a mi php.iniarchivo para habilitar Xdebug, y esperar no haberme perdido nada.

Estoy seguro de que estoy haciendo esto de manera ineficiente y de una manera propensa a errores humanos.

¿No es posible de alguna manera copiar la totalidad de la configuración y los sitios de Apache 2 en mi máquina Ubuntu y colocarlos en mi máquina Linux Mint de una sola vez? ¿O al menos, en un mínimo de pasos que son menos que recrear cada sitio y configurar desde cero?

Tenga en cuenta que soy más diseñador que administrador, así que asuma que mi conocimiento de los comandos de Linux y la configuración del servidor es mínimo.

Respuesta1

La configuración de su servidor, como cualquier configuración de programa de todo el sistema, se encuentra en /etc. La ubicación exacta depende de la distribución, pero /etc/apacheo /etc/apache2son buenas apuestas. Tanto Ubuntu como Mint usan /etc/apache2.

Si tiene los mismos complementos instalados y versiones de Apache que no están muy separadas, puede simplemente copiar el /etc/apache2directorio completo a la nueva máquina. Por supuesto, también necesitarás copiar la(s) raíz(es) de tu documento.

Si está ejecutando algunas aplicaciones web, también deberá migrarlas. Esto puede o no ser tan sencillo como copiar algunos archivos, depende en gran medida de la aplicación. En particular, si hay una base de datos involucrada, necesitarás instalar el mismo software de base de datos (normalmente MySQL), volcar la base de datos en la máquina antigua y restaurar el volcado en la nueva máquina.

Respuesta2

¿No es posible de alguna manera copiar la totalidad de la configuración y los sitios de Apache 2 en mi máquina Ubuntu y colocarlos en mi máquina Linux Mint de una sola vez?

Suponiendo que no sean versiones de Apache muy diferentes, sí. Las distribuciones preconfiguran Apache con diferencias menores (por ejemplo, la ubicación de la raíz web), pero si está copiando su configuración y coloca todo en el mismo lugar, hágalo al por mayor. Al igual que con sobrescribir la configuración, no juegues con editarla de la misma manera. Tenga en cuenta que la ubicación de los archivos conf de Apache se compila en el binario de Apache y puede diferir de una distribución a otra. Sin embargo, lo que hay en los archivos conf es portátil, por lo que deberías poder reemplazar los archivos por los tuyos propios. Además de la ubicación del archivo de configuración, el comportamiento de Apache está determinado por lo que hay en los archivos de configuración, por lo que si los reemplaza, entonces, por ejemplo, la raíz web estará determinada por su "nueva" configuración. Otro detalle aquí, como ya habrás notado, son las cosas en /etc/hosts.

Apache a veces utiliza partes semiindependientes (por ejemplo, php) que tienen su propia configuración. Si sabes que estás usando algo así, tendrás que investigar un poco para descubrir los detalles.

Esto plantea la pregunta decómo mantener el servidor respaldado; si lo haces coherentemente, es sólo cuestión deimplementar la copia de seguridad en otra máquina(es decir, como si hubiera sido totalmente fubarizado). Por "copia de seguridad del servidor" no me refiero a todo su sistema de archivos, ni al binario de Apache, que ya cuenta con una copia de seguridad efectiva porque es un paquete de distribución. Me refiero a todo lo que está en la raíz web (p. ej. /var/www), todos los archivos de datos, scripts, etc. que utiliza el servidor, y la configuración, que probablemente esté en algún lugar de /etc; Como se mencionó, esta ubicación es variable pero está compilada en Apache, lo que significa que si desea implementar en una distribución diferente, es posible que deba colocar los archivos conf en un lugar diferente.

Cómoexactamentelo que haga depende de la naturaleza de su servidor. Si está sirviendo varias cosas que en sí mismas son proyectos independientes, esos proyectos deben tener una copia de seguridad de forma independiente; esto debería incluir documentación sobre cómo deben implementarse y qué requieren, posiblemente incluyendo fragmentos de la configuración de Apache si corresponde. Esto significa que el proyecto se puede instalar fácilmente en cualquier Apache. Si el servidor está dedicado a una cosa, puede simplemente hacer una copia de seguridad de toda la raíz web. En el primer caso (varios proyectos independientes), utilizar alguna forma deVCSes bueno (estas son cosas buenas para aprender a usar; mi preferencia personal es, gitpero hay muchas otras), en el último (una raíz web megalítica) algo así como rsync, pero esas son solo sugerencias. El punto es que debe tener una herramienta con la que se sienta cómodo para cosas como esta (hacer copias de seguridad selectivas de subárboles de directorios en un sistema de archivos). La forma más sencilla en una instalación pequeña es probablemente simplemente tar(o zip).

Si está utilizando una base de datos backend con Apache, también querrá hacer una copia de seguridad de la misma manera: los datos y la configuración, pero si la base de datos es utilizada por varios proyectos diferentes de los que se realiza una copia de seguridad de forma independiente, se debe realizar una copia de seguridad de sus datos. arriba con ellos.

Así que si ustedmantener una copia de seguridadDe este tipo, todo lo que tiene que hacer para "duplicar su Apache" es instalar Apache, luego implementar la copia de seguridad: descomprimir, rsync, git clone, lo que sea, las distintas partes, copiar la configuración en el lugar correcto y listo.

Entonces es posible que tenga un problema con el software faltante (las distribuciones pueden agrupar los módulos de Apache de manera diferente, necesita SQL, etc.), pero eso es bastante sencillo.

información relacionada