« Download failed. Destination directory for file streaming does not exist » sur WordPress

Fiche du décodeur d'erreurs, mise à jour le 12 octobre 2026

GênantMises à jour et installation
Le message affiché
Download failed. Destination directory for file streaming does not exist or is not writable.
Autres formulations du même message 2
  • Destination directory for file streaming does not exist or is not writable.
  • Le téléchargement a échoué. Le dossier de destination pour la diffusion de fichier n’existe pas ou n’est pas accessible en écriture.

Avant d’installer une mise à jour, WordPress télécharge l’archive dans un dossier temporaire du serveur. Ce message indique que ce dossier n’existe pas, ou que PHP n’a pas le droit d’y écrire : le téléchargement s’arrête avant même de commencer. Le site fonctionne, mais extensions, thèmes et WordPress restent bloqués sur leur version actuelle.

Pourquoi cette erreur apparaît

  • La constante WP_TEMP_DIR, dans wp-config.php, désigne un dossier qui n’existe plus, typiquement après un déménagement vers un autre hébergeur.
  • Le dossier temporaire du serveur (celui du système ou du réglage upload_tmp_dir) n’est pas accessible en écriture pour PHP.
  • Une restriction open_basedir empêche PHP d’utiliser le dossier temporaire prévu.
  • Le disque ou le quota de l’hébergement est plein.
  • Le dossier wp-content, dont WordPress se sert en dernier recours, est lui aussi protégé en écriture.

Comment corriger le problème

Chercher WP_TEMP_DIR dans wp-config.php

Ouvrez wp-config.php, à la racine du site, avec le gestionnaire de fichiers de l’hébergeur ou un logiciel FTP, et cherchez WP_TEMP_DIR. Si la ligne existe et contient le chemin d’un ancien serveur (un autre nom de compte, un autre dossier /home), vous tenez très probablement la cause.

Écarter un disque plein

Regardez l’espace utilisé dans votre espace client. Un hébergement saturé ne peut plus écrire le moindre fichier temporaire, et le message est alors le même que pour un dossier manquant.

Donner à WordPress un dossier temporaire valide

Créez un dossier temp dans wp-content, avec les droits 755. Ajoutez ensuite la ligne ci-dessous dans wp-config.php, au-dessus de « C’est tout, ne touchez pas à ce qui suit », ou corrigez l’ancienne ligne WP_TEMP_DIR. Ce chemin suppose que wp-config.php se trouve à la racine du site. Relancez la mise à jour.

define( 'WP_TEMP_DIR', __DIR__ . '/wp-content/temp/' );

Contrôler le dossier réellement utilisé

Avec WP-CLI, ces commandes affichent la valeur de WP_TEMP_DIR et le dossier temporaire retenu par WordPress. Vérifiez qu’il existe et que l’utilisateur PHP peut y écrire. Le résultat en ligne de commande peut différer légèrement de celui du serveur web. Si open_basedir est actif, ce dossier doit aussi figurer dans la liste des chemins autorisés : sur un mutualisé, c’est en général l’hébergeur qui gère ce réglage.

wp config get WP_TEMP_DIR
wp eval 'echo get_temp_dir();'

Copiez wp-config.php sur votre ordinateur avant de le modifier : une seule erreur de syntaxe dans ce fichier met tout le site hors service.

Le guide completConfigurer correctement les permissions de fichier WordPress

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