Runtime
Warning: move_uploaded_file(/var/www/uploads/avatar.png): Failed to open stream: Permission denied. – PHP E_WARNING
La funzione non riesce a spostare il file temporaneo nella cartella definitiva perché l'utente di sistema di PHP (`www-data` o `nginx`) non possiede i permessi di scrittura sulla directory di destinazione.
Cosa significa questo errore?
La funzione non riesce a spostare il file temporaneo nella cartella definitiva perché l'utente di sistema di PHP (`www-data` o `nginx`) non possiede i permessi di scrittura sulla directory di destinazione.
Messaggio originale
Warning: move_uploaded_file(/var/www/uploads/avatar.png): Failed to open stream: Permission denied.Contesto e parole chiave
Alias
- move_uploaded_file failed to open stream
- move_uploaded_file permission denied
Messaggi alternativi
- spostamento file caricato fallito permessi cartella di destinazione negati
Prodotti
- PHP Engine / Zend Engine / PHP-FPM / Composer
Piattaforme
- Linux
- macOS
- Windows Server
Parole chiave
- composer
- E_WARNING
- errore-php-move-uploaded-file-permission-denied
- php
- php 8
- php.runtime.move-uploaded-file-permission-denied
- Runtime
Cause possibili
Origine del problema per PHP: Warning — move_uploaded_file(): Permission denied
La funzione non riesce a spostare il file temporaneo nella cartella definitiva perché l'utente di sistema di PHP (`www-data` o `nginx`) non possiede i permessi di scrittura sulla directory di destinazione.
molto comuneDiagnosi
Diagnostica PHP per PHP: Warning — move_uploaded_file(): Permission denied
Esaminare i log degli errori di PHP nel file specificato da error_log in php.ini o nei log di PHP-FPM /var/log/php-fpm/www-error.log.
Come leggere il risultato. Mostra lo stack trace completo dell'errore, file e numero di riga esatti in cui è avvenuto il blocco.
tail -n 50 /var/log/nginx/error.logRisoluzione
Procedura di risoluzione per PHP: Warning — move_uploaded_file(): Permission denied
Applicare la correzione al codice PHP o alla configurazione del php.ini secondo le specifiche ufficiali.
- Verificare la riga di codice segnalata nello stack trace
- Regolare i parametri in php.ini se l'errore deriva da limiti di sistema
- Riavviare il servizio PHP-FPM o Apache
sudo systemctl reload php-fpmDomande frequenti
Come risolvere il codice o errore E_WARNING in PHP?
La funzione non riesce a spostare il file temporaneo nella cartella definitiva perché l'utente di sistema di PHP (`www-data` o `nginx`) non possiede i permessi di scrittura sulla directory di destinazione.
Approfondimenti
- PHP Official Manual - Errors and Exceptions documentazione_ufficiale