我正在尝试使用以下命令从PHP运行Python脚本:
exec('/usr/bin/python2.7 /srv/http/assets/py/switch.py arg1 arg2');
但是,PHP根本不会产生任何输出。错误报告设置为E_ALL,并且display_errors打开。
这是我尝试过的:
- 我使用
python2
,/usr/bin/python2
而python2.7
不是/usr/bin/python2.7
- 我还使用了相对路径而不是绝对路径,它也没有改变任何东西。
- 我试着使用的命令
exec
,shell_exec
,system
。
但是,如果我跑步
if (exec('echo TEST') == 'TEST')
{
echo 'exec works!';
}
它shutdown now
什么也没做,却可以正常工作。
PHP有权访问和执行文件。
编辑:感谢亚历杭德罗,我能够解决此问题。如果您遇到相同的问题,请不要忘记您的Web服务器可能/希望不是以root用户身份运行。尝试以您的Web服务器用户或具有类似权限的用户身份登录,然后尝试自己运行命令。