# « Brièvement indisponible pour cause de maintenance » : débloquer le site

> Une mise à jour interrompue laisse le fichier .maintenance en place et bloque tout le site. Diagnostic et correctif en moins de deux minutes.

- Auteur : Clément Hadrot
- Publié le : 2021-07-07
- Mis à jour le : 2021-07-07
- Catégorie : Outils &amp; workflow
- URL : https://wpmoderne.dev.wordpress-developpement.fr/outils/brievement-indisponible-maintenance-debloquer/

## L’essentiel

- Le fichier .maintenance survit à une mise à jour coupée en plein milieu
- Un simple wp-cli ou une suppression manuelle suffit
- Prévenir en augmentant le timeout et en évitant les coupures réseau

## Symptôme

Un client appelle, paniqué : son site affiche « Brièvement indisponible pour cause de maintenance programmée. Revenez dans une minute. » — et ce message reste figé depuis vingt minutes, largement au-delà de la minute annoncée. Aucune interaction ne débloque la situation : ni rafraîchir la page, ni attendre. L'administration WordPress elle-même reste inaccessible, remplacée par ce même message.

Ce scénario survient presque toujours dans le même contexte : une mise à jour de plugin, de thème ou de WordPress lui-même a été interrompue avant sa fin — connexion réseau coupée, script PHP arrêté par une limite de temps d'exécution, ou fermeture accidentelle de l'onglet pendant le processus.

## Diagnostic

> L'essentiel à retenir : Le fichier .maintenance survit à une mise à jour coupée en plein milieu ; Un simple wp-cli ou une suppression manuelle suffit ; Prévenir en augmentant le timeout et en évitant les coupures réseau

WordPress place, au tout début de chaque processus de mise à jour, un fichier nommé `.maintenance` à la racine de l'installation. Ce fichier contient une simple variable PHP indiquant l'heure de début :

```
<?php $upgrading = 1628337600; ?>
```

À la fin d'une mise à jour normale, WordPress supprime ce fichier automatiquement. Si le processus est interrompu avant cette suppression, le fichier reste en place indéfiniment — et WordPress vérifie sa présence à chaque requête entrante, affichant le message de maintenance tant qu'il existe, sans jamais l'auto-expirer au-delà de quelques minutes de battement.

Pour confirmer le diagnostic, une connexion SSH ou FTP à la racine du site suffit :

```
ls -la | grep maintenance
```

Si le fichier `.maintenance` apparaît dans le résultat, le diagnostic est confirmé.

## Correctif

La solution la plus directe consiste à simplement supprimer ce fichier :

```
rm .maintenance
```

Ou, si WP-CLI est disponible sur le serveur, une commande dédiée existe et vérifie en plus la cohérence de l'installation avant de rétablir l'accès :

```
wp maintenance-mode deactivate --allow-root
```

Attention toutefois : si le fichier `.maintenance` existait parce qu'une mise à jour de la base de données WordPress elle-même était en cours (pas seulement un plugin), il faut vérifier après suppression que le site fonctionne réellement, en particulier en se rendant sur `/wp-admin`, qui déclenche automatiquement l'écran de mise à jour de base de données restante si nécessaire.

- Supprimer `.maintenance` à la racine de l'installation
- Se rendre immédiatement sur `/wp-admin` pour vérifier si une mise à jour de base de données reste à finaliser
- Vérifier dans la liste des extensions que celle en cours de mise à jour au moment de la coupure s'est bien installée intégralement
- Consulter les journaux d'erreur PHP pour repérer une éventuelle installation partielle de fichiers

## Prévention

Ce blocage n'a rien d'aléatoire : il survient systématiquement dans les mêmes circonstances, qu'on peut anticiper.

| Cause fréquente | Prévention |
| --- | --- |
| Timeout PHP trop court sur un gros plugin | Augmenter `max_execution_time` temporairement pendant les mises à jour importantes |
| Connexion réseau instable pendant la mise à jour | Effectuer les mises à jour critiques depuis une connexion filaire, ou via WP-CLI en SSH plutôt que depuis l'interface web |
| Fermeture accidentelle de l'onglet | Ne jamais naviguer ailleurs tant que le message « Mise à jour en cours » est affiché |
| Mise à jour groupée de nombreuses extensions | Mettre à jour une extension à la fois sur les sites critiques, plutôt qu'un lot complet en une seule opération |

Sur les projets gérés en ligne de commande, lancer les mises à jour via `wp plugin update --all --allow-root` depuis une connexion SSH stable réduit considérablement le risque, comparé à l'interface web où un simple problème de rafraîchissement de page peut suffire à interrompre le processus.

> Ce blocage fait partie des rares urgences WordPress qui se résolvent en moins d'une minute une fois le diagnostic posé — et pourtant il génère un stress disproportionné chez les clients, précisément parce que le site entier semble hors service sans message d'erreur explicite.

## En résumé

Un fichier `.maintenance` oublié à la racine explique la quasi-totalité des blocages « brièvement indisponible » qui durent plus de quelques minutes. La correction est immédiate — une suppression de fichier — mais elle doit toujours s'accompagner d'une vérification de l'état réel de la mise à jour interrompue, pour éviter de rouvrir l'accès à un site dans un état intermédiaire incohérent. Ce mode de maintenance programmée et volontaire, activable à la demande pour des interventions planifiées, répond à une logique différente et mérite un traitement séparé.
