¿Cómo desconectar un sitio usando Drush?


80

¿Cómo puedo desconectar un sitio usando Drush?

Respuestas:


125

Drupal 8: drush sset system.maintenance_mode TRUE

Drupal 7: drush vset maintenance_mode 1

Drupal 6: drush vset site_offline 1


77
Si está utilizando drush-5.x, ahora puede simplemente usar "drush vset maintenance_mode 1". Drush volverá a escribir maintenance_mode a site_offline para Drupal 6. (Esta característica es más reciente que la respuesta anterior.)
greg_1_anderson

55
Asegúrese de borrar los cachés ( drush cc all) después de cambiar esta variable.
smokris

1
Drupal 8: drush state-set system.maintenance_mode 1(No me gustan los alias de drush)
Andrea

15

Primero debe cd en el directorio correcto para estar dentro del directorio de Drupal. Si está utilizando un CD de instalación de múltiples sitios en el directorio de sitios / nombre de sitio correcto o especifique la configuración correcta -l

En Drupal 6 solo se requiere este comando:

$ drush vset --yes site_offline 1;

También en Drupal 6 puede usar los siguientes comandos si desea especificar un mensaje para mostrar a los usuarios del sitio mientras está inactivo.

$ drush vset --yes site_offline_message "This site is being maintained";
$ drush vset --yes site_offline 1;

En Drupal 7, use el siguiente comando para poner el sitio en modo de mantenimiento:

$ drush vset --yes maintenance_mode 1;

Para configurar un mensaje específico use:

$ drush variable-set --yes maintenance_mode_message "This site is being maintained"

Podría ser necesario borrar las memorias caché para que los cambios de estas variables surtan efecto:

$ drush cc all

1
Esto no funciona si la variable aún no existe. Te estás perdiendo el parámetro - siempre establecido.
Tobias Sjösten

1
Sin embargo, el instalador crea la variable. Vaya a instalar un nuevo drupal y busque en la tabla de variables.
Stewart Robinson

1
Votó a favor debido a que incluye la parte site_offline_message. ¿Creo que el equivalente de Drupal 7 de site_offline_message es maintenance_mode_message?
lolcode

No es necesario para borrar la caché, variable_set () lo hace por usted: api.drupal.org/api/drupal/includes%21bootstrap.inc/function/...
mvc

1
variable_set solo borra dos cachés. cache_clear_all ('variables', 'cache_bootstrap');
Stewart Robinson

2

Para hacer esto con Drupal 8 y Drush 8.x, use el state-setcomando :

drush sset system.maintenance_mode 1

Al principio, supuse que esto sería algo con lo que establecería drush config-set system.maintenance, sin embargo, las únicas teclas en esa configuración son message(el mensaje que se muestra cuando el modo de mantenimiento está habilitado) y langcode(el código de idioma para dicho mensaje).


0

Esto está controlado por una variable, site_offline.

$ drush vset --always-set site_offline 1

También puede configurar el mensaje fuera de línea de esta manera.

$ drush vset --always-set site_offline_message 'Please try again later!'

Esto haría que el sitio vuelva a funcionar si está fuera de servicio por mantenimiento.
Stewart Robinson

Gracias por señalar eso. Por supuesto, debe establecerse en 1, nada más.
Tobias Sjösten

0

Desde Drupal 6 use:

drush vset site_offline 1

Para sacarlo del mantenimiento:

drush vset site_offline 0
drush cc all
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.