我无法在我的网页上获得一个按钮来执行一个python脚本,该脚本也位于服务器中与其他html和php文件相同的文件夹中。
exec();
system();
escapeshellcmd();
shell_exec()
所有这些命令现在都不适用于我。我有chmod + x my .py文件,并在我的python文件的最开头包含#!/ usr / bin / env python3。
<?php
if( isset($_POST['runScript'])){
$command = escapeshellcmd('/nfs/nfs7/home/team51/cgi-
pub/dataProcess.py');
$output = shell_exec($command);
echo $output;
}
?>
<form method="post">
<input type="submit" name="runScript" value="runScript">
</form>
最后,python脚本应该将csv文件放在与其余文件相同的文件夹中。但我一无所获。
有些函数只打印回来“Array()”
您正在从apache用户运行python脚本。 apache用户可能无法访问Python路径
使用完整的python安装路径来执行脚本。
exec("/usr/bin/python /nfs/nfs7/home/team51/cgi-
pub/dataProcess.py");
要找出确切的错误检查apache错误日志。如果错误日志拒绝权限,则表示apache无权执行脚本。您可以从sudoers文件访问。
尝试创建一个sh文件来执行python脚本并使用PHP来执行这个sh文件