Amazon Elastic Beanstalk:如何设置wsgi路径?

use*_*364 6 python django amazon-web-services

我从那里的文件中练习在Elastic Beanstalk下设置Django.但是有错误.

ERROR   Your WSGIPath refers to a file that does not exist.
Run Code Online (Sandbox Code Playgroud)

我的目录是这样的:

-djangoenv (where I use git)
     - mysite 
          -manage.py
          -mysite 
              -__init__.py 
              -settings.py
              -urls.py
              -wsgi.py
Run Code Online (Sandbox Code Playgroud)

和我的.elasticbeanstalk/optionsettings.djapp文件是这样的:

在此输入图像描述

.ebextensions/python.config 像这样的,我不知道在哪里把这个.尝试了几次还是不行.我试着mysite/mysite/wsgi.py还是不行

container_commands:
  01_syncdb:    
    command: "django-admin.py syncdb --noinput"
    leader_only: true

option_settings:
  - namespace: aws:elasticbeanstalk:container:python
    option_name: WSGIPath
    value: mysite/wsgi.py
  - option_name: DJANGO_SETTINGS_MODULE
    value: mysite.settings
Run Code Online (Sandbox Code Playgroud)

请告诉我如何设置我的wsgi路径?

非常感谢你!

Den*_*isH 8

我发现你必须重新启动服务器才能考虑这些变化.

我花了很多年时间改变和调整这些选项,没有任何效果.然后,当我去EB控制台并重新启动环境时,它工作正常.


小智 6

在服务器中,您要将django应用程序部署到Elasticbean stalk。跑:

eb配置

然后将application.py替换为mysite / wsgi.py并保存更改。

更新后,您可以执行以下操作:

git添加。git commit -m“一些更新” eb部署

成功更新环境后,您可以在环境下查看elasticbeanstalk中的更改,转到实例并检查Configuration中的设置,然后在Software Configuration下查看WSGIPath

免责声明:此信息有效期至2016年11月4日。AWS可能会进一步更改设置。


shi*_*ngg 5

指定的路径应该是相对于.elasticbeanstalk目录的。正确的路径应该是mysite/mysite.wsgi.py. option_settings:是:

option_settings:
  - namespace: aws:elasticbeanstalk:container:python
    option_name: WSGIPath
    value: mysite/mysite/wsgi.py
  - option_name: DJANGO_SETTINGS_MODULE
    value: mysite.settings
Run Code Online (Sandbox Code Playgroud)


Dan*_*man 0

您将 WSGIPath 设置为“application.py”,但 WSGI 文件是“mysite/wsgi.py”。