Hoe te repareren: FastCGI sent in stderr – PHP message: PHP Warning: move_uploaded_file

PHP Warning: move_uploaded_file is een typische fout van webservers met Nginx en verschijnt wanneer we een bestand naar de server willen uploaden. Meestal wanneer we certificaten of andere bestanden moeten uploaden die er niet bij horen “Media”, zien we de fout niet in de CMS-beheerinterface.

In een meer concrete vorm: de fout “PHP Warning: move_uploaded_file” wij vinden het erin error.log in de vorm van:

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'

Waarom treedt de fout op? PHP Warning: move_uploaded_file en hoe wij het oplossen

Zoals ik hierboven al zei, verschijnt de fout wanneer we proberen enkele bestanden naar de webserver te uploaden.

FastCGI sent in stderr” is typisch voor servers met PHP-FPM en Nginx als software voor het web. Het probleem zit dus ergens in de relatie van het script waarmee de bestanden worden geüpload.

move_uploaded_file(): Unable to move” het vertelt ons heel duidelijk dat die bestanden niet kunnen worden geüpload en verplaatst naar een andere map op de webserver door het script dat de bewerking uitvoert.

Deze fout oplossen PHP het wordt heel eenvoudig opgelost door de juiste rechten op de server in te stellen, zowel voor het uitvoeringsscript, waartoe de meest waarschijnlijke gebruiker: nginx geen toegang had, als voor de doelmap.

Als de websitebestanden niet van een gebruiker zijn, zoals op cPanel, VestaCP of andere hostingbeheerplatforms, dan is de oplossing vrijwel zeker om de nginx-gebruiker toegang te geven tot de uploadmap en het script.

Voor het bovenstaande codevoorbeeld voeren we de volgende opdracht uit in SSH:

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

Ik start de upload opnieuw en alles zou zonder de fout moeten verlopen move_uploaded_file(): Unable to move.

Als u nog steeds problemen ondervindt, kunt u dit oplossen in de opmerkingen van deze tutorial.

Gepassioneerd over technologie schrijf ik met plezier op StealthSetts.com beginnend met 2006. Ik heb een rijke ervaring in besturingssystemen: macOS, Windows en Linux, maar ook in programmeertalen en blogplatforms (WordPress) en voor online winkels (WooCommerce, Magento, Presashop).

Home Uw bron van IT -tutorials, nuttige tips en nieuws. Oplossing: FastCGI verzonden in stderr – PHP-bericht: PHP-waarschuwing: move_uploaded_file

1 dacht aan "Hoe te repareren: <span class="notranslate">FastCGI stuurde stderr – PHP-bericht: PHP-waarschuwing: move_uploaded_file</span>”

  1. Bonjour,
    Ik heb uw artikelen over het onderwerp [move_upload_file] gelezen en herlezen.
    Het blijkt dat ik met dit probleem wordt geconfronteerd en dat ik er al maanden zonder succes uit probeer te komen.
    Ik heb een persoonlijke site waarin ik een Form.html-pagina heb die slechts gedeeltelijk werkt, namelijk: onmogelijk om de feed te openen enz... en natuurlijk om deze naar 'uploads' te verplaatsen.
    Ik ben met pensioen gegaan bij Grafische Kunsten, typograaf op 13-jarige leeftijd, daarna offsetredacteur, computergrafisch ontwerper, webmaster, kortom ik ben 84 jaar oud met pensioen en heb nog steeds een passie voor mijn vak.
    Als ik rondkom met HTML en JavaScript, heb ik vandaag moeite met PHP.
    Met mijn mede-Algerijnse veteranen maak ik kleine uitstapjes en voer ik uit “rapporten” die ik op mijn Persoonlijke site heb gezet, beschikbaar voor geïnteresseerden; daarom zou ik graag documenten willen ontvangen omdat ik niet alles zelf kan doen om mijn punten te illustreren, vandaar het idee van het PHP-formulier en de verwerking.
    Ik heb mijn site gemaakt met “Dreamweaver CC2020”, een Mac-versie die thuis wordt gehost op een Synology “Ngnix” DMS v.-server. 7.1 – PHP 8 (mogelijkheid php 7.2, php 7.3, php 7.4). Standaardcertificaat (geen IP): TrustCor DV CA – G2 RSA
    Het formulier werkt correct voor “tekst”-velden, maar weigert mediavelden.
    Als je wilt, kun je verbinding maken met de bovenstaande URL, op het beeldje klikken en omdat ik de “return” html niet heb geactiveerd, kun je het resultaat op de PHP-pagina bekijken. (Ik heb 10 Mb en 20 Mb toegewezen) voor media.
    En als ik gelijk heb, zou het probleem komen van de “FastCGI” van de Nginx PHP-TPM-servers, wat mijn geval is, dus in het TPM-paneel zijn er veel vakjes die je kunt in- of uitschakelen, maar welke?
    Ik heb het SSH-commando opgemerkt:
    chown -R nginx:nginx /srv/www/domain.test/public/
    chmod g+w bestand.bestand
    Maar past het bij mijn server?
    Bij voorbaat dank voor uw waardevolle advies.

    Antwoord
Leave a Comment