Πώς να φτιάξεις: FastCGI sent in stderr – PHP message: PHP Warning: move_uploaded_file

PHP Warning: move_uploaded_file είναι ένα τυπικό σφάλμα διακομιστή ιστού με nginx και εμφανίζεται όταν θέλουμε να ανεβάσουμε ένα αρχείο στον διακομιστή. Τις περισσότερες φορές, όταν πρέπει να ανεβάσουμε πιστοποιητικά ή άλλα αρχεία που δεν ανήκουν “Media”, δεν βλέπουμε το σφάλμα στη διεπαφή διαχείρισης CMS.

Σε πιο συγκεκριμένη μορφή, το λάθος “PHP Warning: move_uploaded_file” το βρίσκουμε σε error.log όπως και:

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'

Γιατί παρουσιάζεται το σφάλμα PHP Warning: move_uploaded_file και πώς το λύνουμε

Όπως είπα παραπάνω, το σφάλμα παρουσιάζεται όταν προσπαθούμε να ανεβάσουμε αρχεία στον διακομιστή web.

"FastCGI sent in stderr"Είναι τυπικό για διακομιστές που έχουν PHP-FPM και nginx ως λογισμικό για τον Ιστό. Άρα το πρόβλημα βρίσκεται κάπου στη σχέση του σεναρίου μέσω του οποίου ανεβαίνουν τα αρχεία.

"move_uploaded_file(): Unable to move"Μας λέει πολύ ξεκάθαρα ότι αυτά τα αρχεία δεν μπορούν να μεταφορτωθούν και να μετακινηθούν σε άλλο φάκελο στον διακομιστή ιστού από το σενάριο που εκτελεί τη λειτουργία.

Επιλύστε αυτό το σφάλμα PHP λύνεται πολύ απλά, ορίζοντας τα σωστά δικαιώματα στον διακομιστή, τόσο για το σενάριο εκτέλεσης, στο οποίο δεν είχε πρόσβαση ο πιο πιθανός χρήστης: nginx, όσο και για τον φάκελο προορισμού.

Εάν τα αρχεία του ιστότοπου δεν ανήκουν σε κάποιον χρήστη, όπως είναι στο cPanel, VestaCP ή άλλες πλατφόρμες διαχείρισης φιλοξενίας, τότε σχεδόν σίγουρα η λύση είναι να δοθεί στον χρήστη nginx πρόσβαση στο φάκελο μεταφόρτωσης και στο σενάριο.

Για το παραπάνω παράδειγμα κώδικα, θα εκτελέσουμε την ακόλουθη εντολή στο SSH:

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

Συνεχίζουμε τη μεταφόρτωση και όλα θα λειτουργούν χωρίς σφάλματα move_uploaded_file(): Unable to move.

Εάν εξακολουθείτε να αντιμετωπίζετε προβλήματα, μπορεί να λυθεί στα σχόλια αυτού του σεμιναρίου.

Παθιασμένος με την τεχνολογία, γράφω με ευχαρίστηση StealthSettings.com από το 2006. Έχω μεγάλη εμπειρία σε λειτουργικά συστήματα: macOS, Windows και Linux, αλλά και σε γλώσσες προγραμματισμού και πλατφόρμες blogging (WordPress) και για ηλεκτρονικά καταστήματα (WooCommerce, Magento, PrestaShop).

πώς να » Tutorials και ειδήσεις πληροφορικής » Τρόπος διόρθωσης: Το FastCGI εστάλη στο stderr – μήνυμα PHP: PHP Warning: move_uploaded_file

1 σκέψη σχετικά με το «Πώς να διορθώσετε: FastCGI sent in stderr – PHP message: PHP Warning: move_uploaded_file"

  1. Γεια σας,
    J'ai lu et relu vos articles sur le sujet [move_upload_file].
    Il se trouve que je suis confonn avec ce problème et que je cherche depuis moult mois de m'en sortir sans succès.
    Έχω έναν προσωπικό ιστότοπο στον οποίο έχω μια σελίδα Formaire.html που δεν λειτουργεί μόνο εν μέρει, για να ξέρω: είναι αδύνατο να ανοίξει η ροή κ.λπ... και είναι ασφαλές να τις μετακινήσετε σε 'uploads'.
    Je suis retraité des Arts graphiques, typographe à 13 ans, puis monteur offset, infographiste, webmaster, bref j'ai 84 ans retraité και je suis toujours και encore passionné par mon métier.
    Εάν έχετε débrouille avec le html και JavaScript, θα σας aujourd'hui au PHP.
    Κάνω με τους συναδέλφους μου anciens combattant d'Algérie, de petites sorties et réalise des "reportages" που έβαλα στον ιστότοπό μου Perso à dispo pour ceux qui sont intéressé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.
    Δημιούργησα τον ιστότοπό μου με την έκδοση "Dreamweaver CC2020". Mac hébergé chez moi sur un serveur Synology “Ngnix” DMS v. 7.1 – PHP 8 (πιθανότητα php 7.2, php 7.3, php 7.4). Προεπιλεγμένο πιστοποιητικό (No-IP): TrustCor DV CA – G2 RSA
    Η Φόρμα λειτουργεί σωστά για τα πεδία "κείμενο", αλλά απορρίπτει τα πεδία "μέσα".
    Αν το θέλετε, μπορείτε να συνδεθείτε στο URL παραπάνω, να κάνετε κλικ στο ειδώλιο και καθώς δεν χρειάζεται να ενεργοποιήσω το html "return", μπορείτε να οπτικοποιήσετε το αποτέλεσμα στη σελίδα PHP. (Έχω διαθέσει 10 Mb και 20 Mb) για τα μέσα.
    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 case à cocher ou décocher, mais les quelles;
    Παρατήρησα την εντολή SSH:
    chown -R nginx:nginx /srv/www/domain.test/public/
    chmod g+w file.file
    Mais conviendra-t-telle à mon serveur;
    Merci par avance de vos précieux conseils

    απάντηση
Αφήστε ένα σχόλιο