我正在使用PHP和XAMPP
。我已启用端口localhost:8080
,我想从我的PHP脚本(Main.py
)执行python脚本(index.php
)。我的PHP脚本位于:
/Users/User/.bitnami/stackman/machines/xampp/volumes/root/htdocs/index.php
,Python脚本位于:
/Users/User/.bitnami/stackman/machines/xampp/volumes/root/htdocs/Main.py
。
我的Python脚本如下:
print('Hello World')
我的PHP脚本如下:
<?php
$output = exec('/usr/local/bin/python3 /Users/User/.bitnami/stackman/machines/xampp/volumes/root/htdocs/Main.py ' . ' 2>&1');
var_dump($output);
?>
(/ usr/local/bin/python3
是终端which python3
的输出)
但是,我在localhost:8080
获得的输出是:
string(40) "sh: 1: /usr/local/bin/python3: not found"
我还通过编写exec()
来测试我的行与exec('/Users/User/.bitnami/stackman/machines/xampp/volumes/root/htdocs/Main.py ' . ' 2>&1')
的不同变体,但没有任何内容返回正确的输出。
我做错了什么以及如何解决?
我知道StackOverflow上的类似帖子(Running a Python script from PHP,Can't execute Python script from PHP document,Python Script Failing to Execute from PHP exec(),How to properly call Python 3 script from PHP?),但这对我来说都不是这样的。
我想知道我的问题是否与我在XAMPP
上运行Python脚本没有进行任何配置这一事实有关,因为这里的一些帖子(Running Python scripts with Xampp)对此进行了描述。