1

我正在尝试使用 Elastic Beanstalk 和 Amazon Linux 2。我注意到的一件事是 WSGI 路径似乎有点不同。

对于 Django 应用程序,我通常会设置<<app_name>>.wsgi.py

相反,定义它的新方法是使用这样的命名空间。但是,这似乎不适用于仅从eb config购买.ebextensions

<<app_name>>.wsgi:application

我觉得,我在这里做错了什么或者没有得到这个命名空间概念? 为什么我突然要添加命名空间?

4

1 回答 1

0

因为其他人可能会遇到这个问题。

这是我的问题的解决方法:

Amazon Linux 2 使用 Gunicorn 作为其默认网络服务器。Gunicorn 在指定 WSGI 配置的路径时需要特定的语法。此语法不仅包括文件的路径,还包括接受 WSGI 参数的导出函数(或类)的名称。

这就是为什么你必须使用上面的语法。

有几种方法可以为您的项目指定 WSGI 路径。您可以通过 AWS gui 执行此操作,但我的建议是将 Procfile 添加到您的项目中。我的 Procfile 看起来像这样:

web: gunicorn --bind :8000 --workers 3 --threads 2 <<my_app>>.wsgi:application 
于 2020-11-04T09:40:08.840 回答