Jak przełączyć witrynę w tryb offline za pomocą Drush?

80

Jak mogę przenieść witrynę offline za pomocą Drush?

markdorison
źródło

Odpowiedzi:

125

Drupal 8: drush sset system.maintenance_mode TRUE

Drupal 7: drush vset maintenance_mode 1

Drupal 6: drush vset site_offline 1

tim.plunkett
źródło
7
Jeśli używasz drush-5.x, możesz teraz po prostu użyć „drush vset Maintenance_mode 1”. Drush przerwie tryb_obsługowy na podstronę_strony dla Drupala 6. (Ta funkcja jest nowsza niż powyższa odpowiedź).
greg_1_anderson,
5
Pamiętaj, aby wyczyścić pamięć podręczną ( drush cc all) po zmianie tej zmiennej.
smokris
1
Drupal 8: drush state-set system.maintenance_mode 1(Nie lubię pseudonimów Drusha)
Andrea
15

Najpierw powinieneś cd do właściwego katalogu, aby znaleźć się w katalogu Drupal. Jeśli używasz płyty instalacyjnej z wieloma lokacjami w poprawnym katalogu sites / sitename lub określ poprawne ustawienie -l

W Drupal 6 tylko to polecenie jest faktycznie wymagane:

$ drush vset --yes site_offline 1;

Również w Drupal 6 możesz użyć następujących poleceń, jeśli chcesz określić komunikat, który będzie wyświetlany użytkownikom witryny, gdy nie działa.

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

W Drupal 7 użyj następującego polecenia, aby wprowadzić serwis w tryb konserwacji:

$ drush vset --yes maintenance_mode 1;

Aby ustawić konkretną wiadomość, użyj:

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

Konieczne może być wyczyszczenie pamięci podręcznej, aby zmiany tych zmiennych zostały zastosowane:

$ drush cc all
Stewart Robinson
źródło
1
To nie działa, jeśli zmienna jeszcze nie istnieje. Brakuje parametru - zawsze ustawiony.
Tobias Sjösten
1
Zmienna zostaje jednak utworzona przez instalatora. Idź zainstalować świeżego drupala i zajrzyj do tabeli zmiennych.
Stewart Robinson
1
Głosowano z powodu włączenia części site_offline_message. Uważam, że odpowiednikiem Drupal 7 site_offline_message jest Maintenance_mode_message?
lolcode
Nie musisz czyścić pamięci podręcznej, zmienna_set
mvc
1
zestaw_zmiennych czyści tylko dwie pamięci podręczne. cache_clear_all („zmienne”, „cache_bootstrap”);
Stewart Robinson
2

Aby to zrobić w Drupal 8 i Drush 8.x, użyj state-setpolecenia :

drush sset system.maintenance_mode 1

Początkowo zakładałem, że będzie to coś, co ustawię drush config-set system.maintenance, jednak jedynymi kluczami w tej konfiguracji są message(komunikat wyświetlany, gdy włączony jest tryb konserwacji) i langcode(kod języka dla tej wiadomości).

chrisfree
źródło
0

Jest to kontrolowane przez zmienną site_offline.

$ drush vset --always-set site_offline 1

W ten sposób możesz również ustawić wiadomość offline.

$ drush vset --always-set site_offline_message 'Please try again later!'
Tobias Sjösten
źródło
Spowodowałoby to przywrócenie strony, jeśli jest ona wyłączona z powodu konserwacji.
Stewart Robinson
Dzięki za zwrócenie na to uwagi. Oczywiście powinno być ustawione na 1, nic więcej.
Tobias Sjösten
0

Z Drupal 6 użyj:

drush vset site_offline 1

Aby wyłączyć go z konserwacji:

drush vset site_offline 0
drush cc all
TechGirlGeek
źródło