【问题标题】:WSGI path doen't work with Amazon Linux 2WSGI 路径不适用于 Amazon Linux 2
【发布时间】:2020-11-04 17:40:08
【问题描述】:

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

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

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

<<app_name>>.wsgi:application

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

【问题讨论】:

  • Amazon Linux 2 与 AL1 不兼容。它有很多变化。也许eb config 还没有接受它?

标签: amazon-elastic-beanstalk amazon-linux-2


【解决方案1】:

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

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

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

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

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

web: gunicorn --bind :8000 --workers 3 --threads 2 <<my_app>>.wsgi:application 

【讨论】:

    猜你喜欢
    • 2022-10-15
    • 1970-01-01
    • 2020-11-02
    • 2012-08-29
    • 2011-07-12
    • 2019-10-13
    • 2022-08-15
    • 2021-10-05
    • 2012-06-16
    相关资源
    最近更新 更多