0

在我的 debian 上,我运行 xampp。我想使用 php shell_exec 执行 python 脚本。这是我的 php 代码:

shell_exec("/opt/lampp/htdocs/news/hello.py 2>1 &");

当我从浏览器运行它时,我收到此错误:

/usr/bin/python: /opt/lampp/lib/libz.so.1: no version information available (required by /usr/bin/python)

如果我使用这个从终端窗口运行它:php /opt/lampp/htdocs/page/index.php它可以正常工作。那么有什么想法可以让它在浏览器上运行吗?谢谢

4

1 回答 1

0

我猜 xampp 带有它自己的库而不是使用系统库,这可能意味着它设置LD_LIBRARY_PATH为它的本地库目录。

这也会导致其他从 php 启动的程序使用这些库,它们可能不兼容。

为了验证这一点,请尝试system("env");,它会向您显示所有导出的环境变量。如果LD_LIBRARY_PATH已设置,请使用:

shell_exec("LD_LIBRARY_PATH= /opt/lampp/htdocs/news/hello.py 2>1 &");

这会在运行 python 脚本之前取消设置。

于 2013-04-25T12:14:34.177 回答