Php www数据用户无法导入已安装的python模块

Php www数据用户无法导入已安装的python模块,php,python,linux,webserver,ubuntu-12.04,Php,Python,Linux,Webserver,Ubuntu 12.04,我正在尝试创建一个web服务器,最终使用以下命令从PHP代码调用python脚本(“MyScript.py”) echo exec(“MyScript.py…一些参数”) MyScript.py实际上包含一个使用RDkit和其他模块(如numpy)的代码。 当我从用户(MKT)运行这个MyScript.py时,它就像一个符咒 但当它从服务器的PHP脚本执行时,问题就出现了。 /var/www/log/apache2/error.log中的错误消息如下: ImportError: No modu

我正在尝试创建一个web服务器,最终使用以下命令从PHP代码调用python脚本(“MyScript.py”)

echo exec(“MyScript.py…一些参数”)
MyScript.py实际上包含一个使用RDkit和其他模块(如numpy)的代码。
当我从用户(MKT)运行这个MyScript.py时,它就像一个符咒

但当它从服务器的PHP脚本执行时,问题就出现了。 /var/www/log/apache2/error.log中的错误消息如下:

ImportError: No module named rdkit
Traceback (most recent call last):
File "./preditar/preditar.py", line 7, in <module>
from rdkit import Chem
然后在python环境中:

import rdkit
以下是输出:

import rdkit # precompiled from /opt/RDKit_2013_06_1/rdkit/\__init__.pyc
我认为执行此命令的用户www数据没有访问此模块的权限…那么如何在MyScript.py中导入此命令


注意:当我将MyScript.py修改为一个简单的脚本,只需创建一个文件并向其中写入数据…它可以正常工作,没有任何问题,这意味着我没有任何与权限相关的问题。

看起来像是Python导入搜索路径的问题。尝试按以下方式更改导入:

import sys
sys.path.insert(0, "/opt/RDKit_2013_06_1")
import rdkit

是的,我这样做了……但由于RdKit安装在其他文件夹中,它需要我将以下内容添加到环境变量中。”导出RDBASE=/opt/RDKit_2013_06_1;'导出LD_LIBRARY\u PATH=$RDBASE/lib:$LD_LIBRARY\u PATH导出PYTHONPATH=$RDBASE:$PYTHONPATH请建议我如何做…??也解决了这个问题…。对于其他人,你可以参考这篇文章[很好!顺便说一下,在Python中,你可以使用
os.environ
os.putenv()
import sys
sys.path.insert(0, "/opt/RDKit_2013_06_1")
import rdkit