Como colocar um site offline usando o Drush?


80

Como posso colocar um site offline usando o Drush?

Respostas:


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 você estiver usando o drush-5.x, agora você pode simplesmente usar "drush vset maintenance_mode 1". Drush irá reescrever maintenance_mode para site_offline para Drupal 6. (Este recurso é mais recente que a resposta acima.)
— greg_1_anderson

5
Certifique-se de limpar caches ( drush cc all) depois de alterar essa variável.
— 21412 smokris

1
Drupal 8: drush state-set system.maintenance_mode 1(Eu não gosto de aliases de Drush)
— Andrea

15

Primeiro, você deve entrar no diretório correto para entrar no diretório Drupal. Se você estiver usando um CD de instalação de vários sites no diretório sites / sitename correto ou especifique a configuração -l correta

No Drupal 6, apenas este comando é realmente necessário:

$ drush vset --yes site_offline 1;

Também no Drupal 6, você pode usar os seguintes comandos se desejar especificar uma mensagem para mostrar aos usuários do site enquanto ele estiver inativo.

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

No Drupal 7, use o seguinte comando para colocar o site no modo de manutenção:

$ drush vset --yes maintenance_mode 1;

Para definir uma mensagem específica, use:

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

Pode ser necessário limpar os caches para que as alterações dessas variáveis ​​entrem em vigor:

$ drush cc all

1
Isso não funciona se a variável ainda não existir. Está faltando o parâmetro --always-set.
— Tobias Sjösten

1
A variável é criada pelo instalador. Vá instalar um drupal novo e procure na tabela de variáveis.
— Stewart Robinson

1
Voto positivo devido à inclusão da parte site_offline_message. Eu acredito que o Drupal 7 equivalente a site_offline_message é maintenance_mode_message?
— LOLCODE

Você não precisa limpar o cache, variable_set () faz isso por você: api.drupal.org/api/drupal/includes%21bootstrap.inc/function/…
— mvc

1
variable_set limpa apenas dois caches. cache_clear_all ('variáveis', 'cache_bootstrap');
— Stewart Robinson

2

Para fazer isso com o Drupal 8 e o Drush 8.x, use o state-setcomando :

drush sset system.maintenance_mode 1

Inicialmente, eu assumi que isso seria algo com o qual drush config-set system.maintenancedefiniria, no entanto, as únicas chaves nessa configuração são message(a mensagem exibida quando o modo de manutenção está ativado) e langcode(o código de idioma para a mensagem).


0

Isso é controlado por uma variável, site_offline.

$ drush vset --always-set site_offline 1

Você também pode definir a mensagem offline dessa maneira.

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

Isso traria o site de volta se estiver em manutenção.
— Stewart Robinson

Obrigado por apontar isso. Claro que deve ser definido como 1, nada mais.
— Tobias Sjösten

0

No Drupal 6, use:

drush vset site_offline 1

Para retirá-lo da manutenção:

drush vset site_offline 0
drush cc all
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.