Multisitio en Drupal 8 - Visión general
La razón principal para utilizar una instalación multisitio en Drupal es ahorrar tiempo cuando gestionas varios sitios de Drupal que utilizan la misma versión del núcleo. Cada vez que se lanza una nueva actualización del núcleo de Drupal, solo necesitas actualizar un único conjunto de código en lugar de hacerlo individualmente para cada sitio. Sin embargo, también existen desventajas, aunque pueden mitigarse si utilizas el sistema de alojamiento Aegir.
De lo contrario, las complejidades y posibles problemas derivados de intentar administrar una instalación multisitio manualmente requieren habilidades técnicas avanzadas. Los usuarios con este nivel de conocimiento suelen estar familiarizados con el uso de la “línea de comandos”, desde la cual puedes actualizar cada sitio administrado en menos de 2 minutos. Con Aegir, el proceso es aún más rápido, ya que todos los sitios pueden ponerse en cola para actualizaciones mediante una interfaz de “apuntar y hacer clic”, migrando toda la plataforma (en Aegir, la base de código compartida de múltiples sitios) a una versión más reciente. Cualquier sitio que falle se revertirá automáticamente.
Conceptos básicos del multisitio
Aunque un sitio de Drupal requiere un programa de servidor web (por ejemplo, Apache o IIS), un sistema de base de datos (por ejemplo, MySQL o MSSql) y un intérprete PHP, todo lo que es único para tu sitio se encuentra en tu base de datos y en tu base de código.
Actualizar el núcleo de Drupal básicamente implica reemplazar la base de código. La base de datos permanece intacta, salvo que, después de reemplazar el código, es necesario ejecutar el “script de actualización” [TUSITIO/update.php] para cada sitio.
Razones para usar una base de datos por sitio
Las bases de datos funcionan en segundo plano y son gestionadas por la base de código. Normalmente, no tendrás que preocuparte por la base de datos en absoluto.
Intentar usar una sola base de datos para varios sitios rara vez, si acaso, tiene sentido. El pequeño ahorro en almacenamiento que podrías obtener al tener una única base de datos se ve ampliamente superado por los posibles problemas que podrías enfrentar.
- Si los datos de un sitio se corrompen accidentalmente, ya sea por ti, por otros usuarios o por un ataque malicioso, esto podría afectar a todos los sitios.
- Una base de datos está compuesta por muchas “tablas”. Si decides mover uno de tus sitios fuera de la configuración multisitio, te resultará complicado identificar qué tablas pertenecen a cada sitio y cuáles son compartidas entre todos.
Una base de código por sitio
En teoría, tener una sola base de código para todos los sitios que utilizan la misma versión de Drupal podría ahorrar tiempo y espacio en disco.
El espacio en disco es barato, así que dejemos eso de lado.
Como se mencionó antes, actualizar cada sitio Drupal después del lanzamiento de una nueva versión del núcleo puede hacerse en pocos minutos desde la línea de comandos. Por lo tanto, es mejor invertir ese tiempo en aprender esta habilidad en lugar de complicarse con la implementación y resolución de problemas de una configuración multisitio.
Compartir la base de código solo sería realmente útil si todos tus sitios utilizan exactamente los mismos módulos y configuraciones, como podría ser el caso si gestionas sitios separados pero similares, por ejemplo, para cada equipo deportivo de una liga.
Sin embargo, si los sitios que administras utilizan diferentes módulos, corres el riesgo de que un error en un módulo que no todos los sitios usan cause un fallo que afecte a todos.
Configuración del multisitio en Drupal 8
Si deseas configurar sitios Drupal en una instalación multisitio, comienza aquí.