如何解决通过使用 php 运行 python 脚本 - 在控制台中工作但不在网络浏览器中工作
我正在用 PHP 创建一个 API,它将一些参数传递给 python 并生成 pdf 格式的报告。 在 report_gen.py 文件中,我有代码来获取参数并生成 pdf。通过命令行成功运行,但是当我从浏览器或邮递员运行 PHP 文件时,它不起作用。 我想通过 cronjob 运行我的 PHP 文件,以便它在特定时间自动调用。
$data = '基本威尔·约翰尼·威尔逊·史密斯';
$command = escapeshellcmd("python3 report_gen.py $data");
$output = shell_exec($command); 回声$输出;
解决方法
可能(至少)有两个问题。
首先您需要检查/知道服务器女佣使用另一个环境。我相信,您没有使用 webserver-user 进行本地检查。所以我会尝试使用绝对路径。您还必须确保 python 环境(无论您配置什么)必须与您的本地用户相同。
其次,您需要确保您拥有运行该文件的所有权限(网络服务器使用的网络服务器至少需要对 report_gen.py 具有读取权限)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。