Comment déconnecter un site avec Drush?


80

Comment puis-je déconnecter un site avec Drush?

Réponses:


125

Drupal 8: drush sset system.maintenance_mode TRUE

Drupal 7: drush vset maintenance_mode 1

Drupal 6: drush vset site_offline 1


7
Si vous utilisez drush-5.x, vous pouvez maintenant simplement utiliser "drush vset maintenance_mode 1". Drush réécrira maintenance_mode sur site_offline pour Drupal 6. (Cette fonctionnalité est plus récente que la réponse ci-dessus.)
— greg_1_anderson

5
Assurez-vous de vider caches ( drush cc all) après avoir changé cette variable.
— Smokris

1
Drupal 8: drush state-set system.maintenance_mode 1(Je n'aime pas les pseudonymes de drush)
— Andrea

15

Tout d’abord, vous devez aller dans le bon répertoire afin d’être dans le répertoire Drupal. Si vous utilisez un cd d’installation multi-sites dans le répertoire sites / nom_site correct ou spécifiez le paramètre -l correct

Dans Drupal 6, seule cette commande est réellement requise:

$ drush vset --yes site_offline 1;

Également dans Drupal 6, vous pouvez utiliser les commandes suivantes si vous souhaitez spécifier un message à afficher aux utilisateurs du site lorsqu'il est en panne.

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

Dans Drupal 7, utilisez la commande suivante pour mettre le site en mode maintenance:

$ drush vset --yes maintenance_mode 1;

Pour définir un message spécifique, utilisez:

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

Il pourrait être nécessaire d'effacer les caches pour que les modifications de ces variables prennent effet:

$ drush cc all

1
Cela ne fonctionne pas si la variable n'existe pas déjà. Vous manquez le paramètre --always-set.
— Tobias Sjösten

1
La variable est cependant créée par l’installateur. Allez installer une nouvelle drupal et regardez dans la table des variables.
— Stewart Robinson

1
En raison de l'inclusion de la partie site_offline_message. Je pense que l'équivalent Drupal 7 de site_offline_message est maintenance_mode_message?
— lolcode

Vous n'avez pas besoin d'effacer le cache, variable_set () le fait pour vous: api.drupal.org/api/drupal/includes%21bootstrap.inc/function/…
— mvc

1
variable_set n'efface que deux caches. cache_clear_all ('variables', 'cache_bootstrap');
— Stewart Robinson

2

Pour ce faire avec Drupal 8 et Drush 8.x, utilisez la state-setcommande suivante :

drush sset system.maintenance_mode 1

Au début, j'ai supposé que ce serait quelque chose que je définirais avec drush config-set system.maintenance, cependant les seules clés de cette configuration sont message(le message affiché lorsque le mode maintenance est activé) et langcode(le code de langue pour ledit message).


0

Ceci est contrôlé par une variable, site_offline.

$ drush vset --always-set site_offline 1

Vous pouvez également définir le message hors connexion de cette façon.

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

Cela ramènerait le site s'il était en maintenance.
— Stewart Robinson

Merci d'avoir fait remarquer cela. Bien sûr, il devrait être mis à 1, rien d'autre.
— Tobias Sjösten

0

À partir de Drupal 6, utilisez:

drush vset site_offline 1

Pour le sortir de la maintenance:

drush vset site_offline 0
drush cc all
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.