Estoy tratando de ejecutar un script de Python desde PHP usando el siguiente comando:
exec("/usr/bin/python2.7 /srv/http/assets/py/switch .py arg1 arg2");
Sin embargo, PHP simplemente no produce ningún resultado. El informe de errores está configurado en E_ALL y display_errors está activado.
Esto es lo que he intentado:
- Utilicé
python2
,/usr/bin/python2
ypython2.7
en lugar de/usr/bin/python2.7
- También usé un ruta relativa en lugar de una ruta absoluta que tampoco cambió nada.
- Intenté usar los comandos
exec
,shell_exec
,system
.
Sin embargo, si ejecuto
if (exec("echo TEST") == "TEST") { echo "exec funciona !"; }
funciona perfectamente bien mientras que apagar ahora
no hace nada.
PHP tiene los permisos para acceder y ejecutar el archivo.
EDITAR: Gracias a Alejandro, pude solucionar el problema. Si tiene el mismo problema, no olvide que su servidor web probablemente/esperemos que no se ejecute como root. Intente iniciar sesión como usuario de su servidor web o un usuario con permisos similares e intente ejecutar los comandos usted mismo.