让PHP运行Python脚本

Abh*_*nav 13 php python exec

我正在尝试使用PHP运行Python程序.这是代码

$command = '/usr/local/bin/python script.py file';
$temp = exec($command, $output);
Run Code Online (Sandbox Code Playgroud)

这可以通过命令行工作,但不能通过浏览器运行.我正在使用Apache,所以它可能需要正确的权限?我对Linux很陌生,不知道如何使用它.

任何帮助,将不胜感激!

编辑1:

试图使用proc_open但没有任何反应.我给出了脚本的完整路径.使脚本可执行但没有运气.我可以在服务器上尝试其他任何东西吗?(这是CentOS 5)

jdi*_*zle 6

你需要的完整路径传递给脚本,你还需要确保该脚本是通过运行Web服务器的用户可读的(这意味着每个目录路径必须是+ X的网络用户).


Abh*_*nav 6

意识到错了:

  1. 域已设置为虚拟主机,并启用了PHP的safe_mode.proc_open,exec,system,passthru等我觉得不能在safe_mode下工作.

  2. 将脚本放在vhost可访问的目录中.Apache无法访问vhost文档根目录之外的目录.

谢谢您的帮助!