1

更新 1:PIL 和 RDKIT 产生导入错误,因为 .dll 文件没有放在 /venv//Lib/site-packages

我从环境中删除了这两个包,并从我的项目中注释掉了它们的代码。

接下来我更新了基础基础环境:

conda update conda #from base env

然后我升级了 pip 和 setuptools 并重新安装了枕头:

python -m pip install pip --upgrade
pip install setuptools --upgrade
pip install pillow

我现在可以将我的 PIL 内容添加回项目,它可以在生产服务器上正常工作,而无需安装 rdkit。

RDKIT 仅作为 conda install 提供,它仍然无法正确安装并在过程中破坏 PIL(rdkit 取决于枕头)。我已经从 rdkit 和 conda-forge 频道重新安装了。都不工作。

解决此问题的正确方法是什么?我觉得移动 .dll 文件是有风险的,不是一个好的解决方案。

更新 0:RDKIT 不会加载到任何服务器中

我创建了一个基本的 django 项目,类似于您在教程中找到的没有静态文件的项目。该项目已成功发布到 Apache 服务器,在原始帖子和 Windows 10 IIS 中描述如下。接下来修改 models.py 以导入 rdkit,两台服务器都给出了导入错误,并且站点不会显示。

原帖:

RDKIT 是唯一没有加载到我们的生产服务器中的包。

我们成功设置了一个 Wampserver 来运行 Apache 并托管我们的 Django 项目。. .但是必须注释掉与rdkit相关的所有代码才能工作。这抑制了许多必需的功能。

在 Django 的测试服务器中使用 rdkit 没有问题。

主要 wsgi 错误:

from .rdBase import rdkitVersion as __version__\r, referer: http://localhost/APP/

ImportError: DLL load failed: 找不到指定的模块。\r, referer: http://localhost/APP/

相关包和版本详情:

视窗 10

姜戈 2.2

蟒蛇 3.7

康达 4.8.2

rdkit 2019.09.3 conda-forge

Wampserver 3.2

阿帕奇 2.4.41

模组-wsgi 4.7.1

PostgreSQL 10

本博客中的方法描述了我们如何设置生产服务器。通过一个小的改动,我们没有改变 httpd_vhosts.conf 文件,只设置了标准的 localhost。

通过尝试将 rdkit(或其方法之一)导入到在所描述的环境中托管 Web 应用程序所需的任何文件中,可以重现该错误。

我们在 rdkit sourceforge 上找到了这个 2016 线程,听起来其他人在 Linux 系统上遇到了类似的问题。这是我们第一次设置服务器,我们还没有成功地将推荐的修复从 linux 转换为 windows。没有后续行动知道该建议是否被尝试过,更不用说成功了。

这些 2012 年的幻灯片让我们相信有人试图克服 linux 中的类似问题(幻灯片 9)

需要如何更改包才能将其加载到网络服务器中?

谢谢,我们非常感谢您的时间和帮助。

4

0 回答 0