我是ubuntu的用户,并且运行了许多用anaconda安装的python3编写的脚本。我需要的所有模块以前都已安装在此处,即biopython。 但是,当我尝试从/ usr / lib / cgi-bin
运行脚本时,无法在脚本之一中导入biopython从生物导入SeqIO#无效
您可以在此页面http://pegaso.microbiologia.ull.es/cgi-bin/hello.py上看到错误,这是我的服务器。
我已经尝试过Why can't python find some modules when I'm running CGI scripts from the web?上提出的建议 要么 https://www.raspberrypi.org/forums/viewtopic.php?t=50225
在第一种情况下,对www数据的sudo权限会发出安全警告,因为我使用的是来自公共机构的服务器。第二种情况是关于raspberrypi
我该如何解决问题?
我想我的问题是:我不知道如何与HTTP服务器的用户共享anaconda软件包,因为HTTP服务器以“ nobody”用户的身份执行我的脚本。
答案 0 :(得分:0)
解决方案:从主目录中删除anaconda并将其安装在usr / local中。因此,Apache将有权访问该环境。
a)用$ rm -rf anaconda3 /删除anaconda b)在目录/ usr / local中重新安装anaconda3 c)在/root/.bashrc文件的末尾添加一行export PATH ='/ usr / local / anaconda3 / bin:$ PATH' d)验证root用户使用的是正确的Python版本:$ which python
仅此而已