我正在从我的web服务器上运行一个由PHP启动的python脚本。如果python脚本很简单,例如,print Hello World,它将完美地执行。
但是,只要我添加剧作家库并做任何事情,服务器就不会运行脚本...
有人有快速解决的办法吗?
我正在运行test.php,它是:
<?php
$command = escapeshellcmd('python3 test.py');
$output = shell_exec($command);
echo $output;
?>
如果test.py=
print(5)
则输出等于“5”
如果test.py=
from playwright.sync_api import Playwright, sync_playwright, expect
downloadpath = "controlebestanden/" +
def run(playwright: Playwright) -> None:
browser = playwright.chromium.launch(headless=True)
context = browser.new_context()
# Open new page
page = context.new_page()
# Go to
page.goto("https://inzamelhelden.nl/beheer/rapportageplus.php")
browser.close()
with sync_playwright() as playwright:
run(playwright)
print(5)
然后就没有输出了。如果我从服务器的命令行运行脚本,它会运行得很好。
我不知道如何检查错误是什么,脚本从命令行运行良好,错误日志中没有php.我正在运行plesk
1条答案
按热度按时间zwghvu4y1#
您的代码在Ubuntu 22上运行良好,无需更改权限。
我已经删除了语法错误,并将代码简化为一个最小的,可重复的示例。
test.py
:test.php
:终端输出显示权限、相关版本信息以及直接运行和通过本地主机服务器运行的脚本: