---
title: "PHP Warning: Unknown: Unable to create temporary file"
date: 2017-07-29T21:42:59+02:00
description: "Résoudre l'ensemble d'erreurs liée à 'PHP Warning: Unknown: Unable to create temporary file' !"
draft: false
lastmod: 2017-08-14T14:22:43+02:00
tags: ["PHP", "Erreur", "Unknown"]
---
## Description
Dans vos logs d'erreur web, vous avez le message d'erreur suivant :
`FastCGI sent in stderr: "PHP message: PHP Warning: Unknown: Unable to create temporary file, Check permissions in temporary files directory. in Unknown on line 0`
Ou celui-ci, qui est sensiblement différent :
`PHP Warning: File upload error - unable to create a temporary file in Unknown on line 0`
Le problème est très simple: PHP ne peut pas créer les fichiers temporaires
dont il a besoin de créer, dans le répertoire temporaire indiqué dans votre
fichier de configuration `/etc/php-fpm.d/$domain.conf`.
## Dépannage
Ouvrez votre fichier de configuration php-fpm relatif à votre site web.
Vérifiez les informations suivantes :
{{< file "web-php-warning-unknown-unable-create-temp-file-check" shell "/etc/php-fpm.d/$domain.conf" >}}
Relevez les informations relatives à `user`, `group`, et `env[TMP]`
* Vérifiez que le répertoire nommé dans les variables `env` ait bien les droits utilisateurs liés à `user:group`.
* Vérifiez les droits en écriture… *sous OpenBSD, sous Debian/Ubuntu, des droits 0705 semblent fonctionnels*, à défaut 0755 devraient remédier à la situation !
* Si `php_admin_value[open_basedir]` est activée, ou l'option `open_basedir`, veillez à ajouter le répertoire `/tmp` parmi les répertoires autorisés !
`# chown user:group /var/www/tmp`
{{< note info >}}
Vous remarquez que la variable `php_admin_value[upload_tmp_dir]` pointe vers `/tmp`. C'est normal, il pointe vers le répertoire temporaire dans le chroot web…
Si le chroot web est `/var/www`, le répertoire temporaire relatif est bel est bien `/tmp`.
Quoiqu'il en soit, vérifiez que celui-ci est exactement les mêmes droits utilisateurs nécessaire à PHP !
{{}}
---