Sto cercando di eseguire uno script Python da PHP usando il seguente comando:
exec("/usr/bin/python2.7 /srv/http/assets/py/switch .py arg1 arg2");
Tuttavia, PHP semplicemente non produce alcun output. La segnalazione degli errori è impostata su E_ALL e display_errors è attivo.
Ecco cosa ho provato:
- Ho usato
python2
,/usr/bin/python2
epython2.7
invece di/usr/bin/python2.7
- Ho anche usato un percorso relativo invece di un percorso assoluto che non ha cambiato nulla.
- Ho provato a usare i comandi
exec
,shell_exec
,system
.
Tuttavia, se eseguo
if (exec("echo TEST") == "TEST") { echo "exec funziona !"; }
funziona perfettamente mentre spegnimento ora
non fa nulla.
PHP ha i permessi per accedere ed eseguire il file.
EDIT: Grazie ad Alejandro, sono stato in grado di risolvere il problema. Se hai lo stesso problema, non dimenticare che il tuo server web probabilmente/si spera non funzioni come root. Prova ad accedere come utente del tuo server web o come utente con autorizzazioni simili e prova a eseguire tu stesso i comandi.