Pour installer ou mettre à jour une extension, un thème ou WordPress lui-même, le site décompresse une archive puis crée des dossiers sur le serveur. Ici, le serveur a refusé cette création : droits d’écriture inadaptés, fichiers appartenant à un autre utilisateur ou espace disque épuisé. Le site reste en ligne, mais plus rien ne s’installe.
Pourquoi cette erreur apparaît
- Le dossier wp-content, ou l’un de ses sous-dossiers (plugins, themes, upgrade), n’est pas accessible en écriture pour le serveur.
- Les fichiers appartiennent à un autre utilisateur que celui qui fait tourner PHP, souvent après une migration ou une restauration.
- L’espace disque ou le nombre de fichiers autorisé par l’hébergement est atteint.
- Une commande WP-CLI lancée avec le compte root a créé des dossiers que le site ne peut plus modifier.
- Une restriction du serveur, comme open_basedir, interdit à PHP d’écrire à cet endroit.
Comment corriger le problème
Vérifier l’espace disque de l’hébergement
Ouvrez l’espace client de votre hébergeur et regardez l’espace utilisé. Un quota atteint produit exactement ce message, même avec des droits corrects. Dans ce cas, faites de la place (vieilles sauvegardes stockées dans le site, journaux, copies de test) après avoir gardé une copie de ces fichiers sur votre ordinateur.
Repérer le dossier refusé
Depuis la page Extensions, WordPress n’affiche que la phrase courte. Relancez plutôt la mise à jour depuis Tableau de bord > Mises à jour : le message est alors suivi du chemin refusé, par exemple wp-content/upgrade ou wp-content/plugins/nom-de-l-extension. C’est ce dossier qu’il faut examiner.
Contrôler les droits par FTP
Connectez-vous avec un logiciel FTP comme FileZilla, ou avec le gestionnaire de fichiers de l’hébergeur. Les dossiers wp-content, plugins, themes et upgrade doivent être en 755, les fichiers en 644. Ouvrir l’écriture à tout le monde ne règle pas un problème de propriétaire et met le site en danger : n’allez pas au-delà de ces valeurs.
Recréer le dossier de travail upgrade
WordPress décompresse ses paquets dans wp-content/upgrade. Renommez ce dossier en upgrade-old, créez à la place un dossier upgrade vide en 755, puis relancez l’installation. Faites de même avec wp-content/upgrade-temp-backup si c’est lui que cite le message. Les dossiers renommés ne contiennent que des fichiers temporaires : vous pourrez les retirer une fois tout rentré dans l’ordre.
Rétablir le bon propriétaire sur un serveur géré par vous
Sur un VPS ou un serveur dédié, comparez le propriétaire des fichiers et l’utilisateur sous lequel tourne PHP (www-data, ou l’utilisateur du site avec PHP-FPM). Remettez le bon propriétaire et les droits standards en SSH, en adaptant le chemin et le nom d’utilisateur. Évitez ensuite de lancer WP-CLI en root.
chown -R utilisateur:groupe /var/www/monsite
find /var/www/monsite -type d -exec chmod 755 {} ;
find /var/www/monsite -type f -exec chmod 644 {} ;
Sauvegardez fichiers et base avant de modifier des droits ou de renommer des dossiers, et notez les droits d’origine pour pouvoir revenir en arrière.
Un autre message d'erreur ? Collez-le dans le décodeur : il le reconnaît et vous oriente vers la bonne fiche.
Ouvrir le décodeur