So che questo è un errore comune a molti thread ma sono stanco di cercare e non l'ho ancora risolto. Quando provo ad eseguire la funzione file_put_contents ottengo il seguente errore:Impossibile aprire lo stream su file_put_contents in PHP su CentOS 7
Warning: file_put_contents(test.txt): failed to open stream: Permission denied in /var/www/html/nurses/adminWriter.php on line 29
ho già fatto la risposta più comune, modificare le autorizzazioni dei infermieri cartella e il file ditest.txt a 777. Quello non ha funzionato.
Attualmente sono su una nuova installazione dell'ultimo server CentOS 7.
Ho scoperto che se corro lo script php tramite la console:
# php /var/www/html/nurses/adminWriter.php
funziona bene, ottengo l'errore solo quando si esegue attraverso il browser, ma ho davvero bisogno di eseguirlo per di qua.
I migliori saluti!
Quando si esegue uno script php tramite apache, viene eseguito come (qualunque sia l'utente specificato), spesso "apache". Quando esegui uno script php attraverso la console, lo stai eseguendo come qualsiasi altro accesso. Assicurarsi che l'utente "apache" (o qualsiasi altra cosa) possa accedere a quel file (che include qualsiasi directory padre). Inoltre, puoi provare a utilizzare un percorso assoluto per test.txt - potresti provare a scrivere da qualche parte che non ti aspetti. – jedwards
Hai saltato la citazione per scopo? Prova: 'file_put_contents (__ DIR__. '/test.txt');' – alfallouji
Vuoi dire qualcosa come: # chown -R apache: apache/var/www/html/nurses/ – danielnovais92