【发布时间】:2019-03-08 21:55:00
【问题描述】:
我使用 django 在虚拟环境中构建了一个站点,并按照 AWS 文档中的步骤部署该站点。我已经使用 Elastic Beanstalk 将我的站点部署到 AWS Web 服务器,并设置了一个运行 3.6 和 django 2.1.1 的 python 环境。我已提取日志并收到以下错误:
Traceback (most recent call last):
File "/opt/python/current/app/weddingProject/wsgi.py", line 12, in <module>
from django.core.wsgi import get_wsgi_application
ModuleNotFoundError: No module named 'django'
Target WSGI script '/opt/python/current/app/weddingProject/wsgi.py' cannot be loaded as Python module.
我已经阅读了其他帖子,他们说没有安装 django,但是 requirements.txt 文件确实将它列为要安装的包。所以我不确定是什么导致了问题,我不知道如何检查服务器以确保它已安装。
当我运行 pip freeze > requirements.txt 时,我确实看到 django 被列为要安装的包。我运行 eb deploy 并且由于某种原因没有安装 django。
【问题讨论】:
-
"...我不确定是什么导致了问题" - 显然,未安装的模块导致了问题。 Django 的文档中描述了安装过程。我想AWS也提供各种安装手册。
-
您是否尝试过手动安装 django 并在您这样做时检查它是否有效?
-
是的,可能没有安装 Django。这可能会有所帮助:stackoverflow.com/a/10429168/5548239
-
呃... requirements.txt 列出了 Django,但是你真的运行 install 命令来安装 requirements.txt 中的包吗?
-
@ForceBru 显然它没有安装,但为什么我想弄清楚。按照 aws 文档的说明进行操作。 docs.aws.amazon.com/elasticbeanstalk/latest/dg/…
标签: python django python-3.x amazon-web-services amazon-elastic-beanstalk