Comment réparer: FastCGI sent in stderr – PHP message: PHP Warning: move_uploaded_file

PHP Warning: move_uploaded_file est une erreur de serveur Web typique avec Nginx et apparaît lorsque nous voulons télécharger un fichier sur le serveur. La plupart du temps, lorsque nous devons télécharger des certificats ou d'autres fichiers qui n'appartiennent pas à “Media”, nous ne voyons pas l'erreur dans l'interface d'administration du CMS.

Sous une forme plus concrète, l'erreur “PHP Warning: move_uploaded_file” on le retrouve dans error.log comme:

FastCGI sent in stderr: "PHP message: PHP Warning:  move_uploaded_file(/srv/www/domain.test/public/file.file): failed to open stream: Permission denied in /srv/www/domain.test/public/script.php on line 748 PHP message: PHP Warning:  move_uploaded_file(): Unable to move '/tmp/phpqAVtWy'

Pourquoi l'erreur se produit PHP Warning: move_uploaded_file et comment nous le résolvons

Comme je l'ai dit ci-dessus, l'erreur se produit lorsque nous essayons de télécharger des fichiers sur le serveur Web.

"FastCGI sent in stderr”Est ​​typique pour les serveurs qui ont PHP-FPM et Nginx comme logiciel pour le web. Le problème se situe donc quelque part dans la relation du script par lequel les fichiers sont téléchargés.

"move_uploaded_file(): Unable to move"Nous dit très clairement que ces fichiers ne peuvent pas être téléchargés et déplacés vers un autre dossier sur le serveur Web par le script qui effectue l'opération.

Résoudre cette erreur PHP il est résolu très simplement, en définissant les autorisations correctes sur le serveur, à la fois pour le script d'exécution, auquel l'utilisateur le plus probable : nginx n'a pas eu accès, et pour le dossier de destination.

Si les fichiers du site Web n'appartiennent pas à un utilisateur, comme c'est le cas sur cPanel, VestaCP ou d'autres plates-formes de gestion d'hébergement, la solution consiste presque certainement à donner à l'utilisateur nginx l'accès au dossier de téléchargement et au script.

Pour l'exemple de code ci-dessus, nous allons exécuter la commande suivante en SSH :

chown -R nginx:nginx /srv/www/domain.test/public/
chmod g+w file.file

Nous reprenons le téléchargement et tout devrait fonctionner sans erreur move_uploaded_file(): Unable to move.

Si vous rencontrez toujours des problèmes, cela peut être résolu dans les commentaires de ce tutoriel.

Passionné par la technologie, j'écris avec plaisir sur StealthSettings.com depuis 2006. J'ai une expérience approfondie dans les systèmes d'exploitation : macOS, Windows et Linux, ainsi que dans les langages de programmation et les plates-formes de blogging (WordPress) et pour les boutiques en ligne (WooCommerce, Magento, PrestaShop).

Comment » Tutoriels et actualités informatiques » Comment réparer : FastCGI envoyé à stderr - Message PHP : PHP Warning: move_uploaded_file

1 réflexion sur "Comment réparer : FastCGI sent in stderr – PHP message: PHP Warning: move_uploaded_file”

  1. Bonjour,
    J'ai lu et relu vos articles sur le sujet [move_upload_file].
    Il se trouve que je suis conforme avec ce problème et que je cherche depuis moult mois de m'en sortir sans succès.
    J'ai un site perso dans lequel j'ai une page Formaire.html qui ne fonctionne que partiellement, à savoir : il est impossible d'ouvrir les flux etc... et il est prudent de les déplacer en 'uploads'.
    Je suis retraité des Arts graphiques, typographe à 13 ans, puis monteur offset, infographiste, webmaster, bref j'ai 84 ans retraité et je suis toujours et encore passionné par mon métier.
    Si je me débrouille avec le html et le JavaScript, je me heurte aujourd'hui au PHP.
    Je fais avec mes collègues anciens combattants d'Algérie, de petites sorties et réalise des "reportages" que je mets sur mon site Perso à dispo pour ceux qui sont regardés; donc, je désire recevoir des docs car je ne pas tout faire moi même pour illustrer mes propos, d'où l'idée du Formulaire et traitement PHP.
    J'ai créé mon site avec "Dreamweaver CC2020", version Mac héberger chez moi sur un serveur Synology « Ngnix » DMS v. 7.1 – PHP 8 (possibilité php 7.2, php 7.3, php 7.4). Certificat par défaut (No-Ip) : TrustCor DV CA – G2 RSA
    Le formulaire fonctionne correctement pour les champs "texte", mais refuse les champs "média".
    Si vous le souhaitez, vous pouvez vous connecter à l'URL ci-dessus, cliquer sur la figurine et comme je n'ai pas à activer le "retour" html, vous pouvez visualiser le résultat dans la page PHP. (j'ai alloué 10 Mo et 20 Mo) pour les médias.
    Et si je vous suis bien, le soucis viendrait du "FastCGI" des serveurs Nginx PHP-TPM ce qui est mon cas, alors dans le volet TPM, il existe bien moult cas à cocher ou décocher, mais les quoi ?
    J'ai remarqué la commande SSH :
    chown -R nginx:nginx /srv/www/domain.test/public/
    chmod g+w fichier.fichier
    Mais conviendra-t-elle à mon serveur ?
    Merci par avance de vos précieux conseils

    Répondre
Laisser un commentaire