¿Cuándo debo usar una configuración de sitios múltiples?

13

Tengo 4 sitios de Drupal que no tienen nada que ver entre sí, excepto que todos se ejecutan en Drupal y todos son administrados por mí.

Los módulos que necesita cada sitio variarán, pero probablemente compartan un pequeño subconjunto de módulos.

¿Es esta situación un buen candidato para usar la configuración de sitios múltiples?

¿Qué sucede si quiero agregar un quinto sitio? ¿Cómo subiría el nuevo o cómo funcionaría?

mismo viejo
fuente

Respuestas:

11

Las configuraciones de sitios múltiples son un poco complicadas debido a su dependencia de la misma base de código. Puede usar una configuración de varios sitios en este escenario, pero tenga en cuenta que cuando actualice un módulo sites/all/modules, afectará a todos los sitios (a menos que se anulen sites/$SITENAME/modules).

Esto conduce a posibles problemas en los que uno de sus sitios depende de la versión N de un módulo, pero desea usar N + 1 en otro sitio. Es posible que el módulo en cuestión no tenga una ruta de actualización, o que haya cambiado drásticamente su funcionalidad entre versiones (no es tan raro como podría pensar, dada la cultura de Drupal hacia las versiones principales).

Además, si se necesitan cambios críticos en la base de datos durante la actualización de un módulo, encontrará que necesita eliminar varios sitios al mismo tiempo para asegurarse de que se ejecuta update.php.

Entonces, para la mayoría de los casos de uso, los sitios múltiples no son el camino a seguir. A menos que realmente tenga poco espacio o tenga alguna restricción de alojamiento extraña que le impida asignar el dominio de cada sitio a una carpeta separada, probablemente sea mejor mantener bases de código separadas y usar herramientas como Drush y control de versiones para acelerar el código despliegue.

El caso de uso prototípico para sitios múltiples, fuera de su uso como solución alternativa para hosts restrictivos, es cuando implementa una tonelada de sitios que son extremadamente similares. Es posible que esté ejecutando un servicio de alojamiento, o creando un montón de micrositios para una empresa, o lo que sea que tenga. En esos casos, puede ejecutar su propia configuración de sitios múltiples, pero también debe considerar el uso de Aegir , que automatiza y resume muchas de las molestias de ejecutar dicha configuración.

La adición de nuevos sitios a una configuración multi-sitio es bastante sencillo: crear una nueva carpeta bajo sites, editar sites/sites.php(Drupal 7 solamente), copiar sites/default/default.settings.phpa settings.phpen esa nueva carpeta, y visitar el sitio en un navegador. Drupal debería comenzar el proceso de instalación y usar la nueva carpeta. Su nuevo sitio tendrá acceso a todos los módulos, sites/all/modulesal igual que sus sitios existentes.


fuente
Eso es muy bonito. En realidad, esto está relacionado con mi otra pregunta sobre enlaces simbólicos y la carpeta de módulos. Estoy cansado de tener que repetir la misma rutina cada vez que inicio un nuevo sitio de prueba en mi entorno de desarrollo, y también estoy harto de copiar módulos (especialmente módulos personalizados) en múltiples proyectos (lo que complica la actualización). Así que supongo que podría usar el enfoque de sitios múltiples, al menos durante el desarrollo.
sameold
@sameold lo que uso para el desarrollo de Drupal es un repositorio git que contiene mis módulos de uso obligatorio como submódulos. Entonces es solo cuestión de correr git clone [email protected]:/base.git newsitepara obtener un ambiente limpio.
44
Una alternativa sería un archivo de creación drush para la configuración básica. Otra nota menor, la edición de sites / sites.php es opcional y solo es necesaria cuando la búsqueda predeterminada como estaba en D6 no funciona (por ejemplo, multi-sitio con múltiples dominios para un solo sitio).
Berdir
2

Usaría un sitio Multi donde tiene una oferta de contenido relacionada pero para diferentes audiencias.

Por ejemplo, lo usamos para nuestra Intranet que admite múltiples marcas. Esto permite que cada marca se administre individualmente con una opción para compartir contenido / usuarios (gran ahorro de tiempo al reducir la duplicación).

Además, tener una interfaz única (menús / bloques / temáticos) es muy importante para garantizar que diferentes departamentos puedan acceder fácilmente a lo que es más importante para ellos.

Hay muchas funciones disponibles con Acceso de dominio , como permitir que un usuario establezca su sitio predeterminado, diferentes sitios por subdominio (para que pueda tener marketing.intranet.local o engineering.intranet.local, etc.), buscar entre sitios, control de acceso, etc. .

WestieUK
fuente