使用Apache从PHP运行python脚本


Running a python script from PHP with Apache

我在带有index.php的树莓派上安装了一台Apache 2服务器,我可以从网络上的任何计算机访问该服务器。在同一个文件夹(/var/www)中,我还有一个python脚本test.py

手动运行脚本时,脚本运行良好。但是,我希望能够使用php在浏览器中运行该脚本。我试过这个:

<?php 
$command = escapeshellcmd('test.py');
$output = shell_exec($command);
echo $output;
?>

然而,什么也没发生。我还尝试使用完整的文件路径/var/www/test.py,但也不起作用。

有什么建议可以帮我解决这个问题吗?

我想到两件事:

首先,文件中的第一行是否包含python解释器的完整路径?即:

#!/usr/bin/python

其次,该文件是否具有适当的文件权限。您能用www-data用户(您的apache进程应该作为哪个用户运行)打开它吗?

sudo -u www-data /var/www/test.py