Come portare un sito offline usando Drush?


80

Come posso portare un sito offline usando Drush?

Risposte:


125

Drupal 8: drush sset system.maintenance_mode TRUE

Drupal 7: drush vset maintenance_mode 1

Drupal 6: drush vset site_offline 1


7
Se stai usando drush-5.x, ora puoi semplicemente usare "drush vset maintenance_mode 1". Drush riscriverà la modalità di manutenzione in site_offline per Drupal 6. (Questa funzione è più recente della risposta di cui sopra.)
— greg_1_anderson il

5
Assicurati di cancellare le cache ( drush cc all) dopo aver modificato questa variabile.
— smokris

1
Drupal 8: drush state-set system.maintenance_mode 1(Non mi piacciono gli alias di Drush)
— Andrea,

15

Per prima cosa dovresti cd nella directory corretta in modo da essere nella directory Drupal. Se si utilizza un cd di installazione multi-sito nella directory dei siti / sitename corretta o specificare l'impostazione -l corretta

In Drupal 6 è richiesto solo questo comando:

$ drush vset --yes site_offline 1;

Inoltre in Drupal 6 è possibile utilizzare i seguenti comandi se si desidera specificare un messaggio da mostrare agli utenti del sito mentre è inattivo.

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

In Drupal 7 usa il seguente comando per mettere il sito in modalità manutenzione:

$ drush vset --yes maintenance_mode 1;

Per impostare un messaggio specifico utilizzare:

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

Potrebbe essere necessario cancellare le cache per rendere effettive le modifiche di queste variabili:

$ drush cc all

1
Questo non funziona se la variabile non esiste già. Manca il parametro --always-set.
— Tobias Sjösten

1
Tuttavia, la variabile viene creata dall'installer. Vai a installare un nuovo drupal e guarda nella tabella delle variabili.
— Stewart Robinson,

1
Eseguito l'upgrade a causa dell'inclusione della parte site_offline_message. Credo che l'equivalente Drupal 7 di site_offline_message sia maintenance_mode_message?
— lolcode

Non è necessario svuotare la cache, variabile_set () lo fa per te: api.drupal.org/api/drupal/includes%21bootstrap.inc/function/…
— mvc

1
variabile_set cancella solo due cache. cache_clear_all ('variabili', 'cache_bootstrap');
— Stewart Robinson,

2

Per fare questo con Drupal 8 e Drush 8.x usa il state-setcomando :

drush sset system.maintenance_mode 1

Inizialmente, supponevo che questo sarebbe qualcosa con cui avrei impostato drush config-set system.maintenance, tuttavia le uniche chiavi in ​​quella configurazione sono message(il messaggio visualizzato quando la modalità di manutenzione è abilitata) e langcode(il codice della lingua per quel messaggio).


0

Questo è controllato da una variabile site_offline.

$ drush vset --always-set site_offline 1

Puoi anche impostare il messaggio offline in questo modo.

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

Ciò ripristinerebbe il sito se è inattivo per manutenzione.
— Stewart Robinson,

Grazie per la segnalazione. Ovviamente dovrebbe essere impostato su 1, nient'altro.
— Tobias Sjösten,

0

Da Drupal 6 usa:

drush vset site_offline 1

Per toglierlo dalla manutenzione:

drush vset site_offline 0
drush cc all
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.