Django在localhost上成功运行,但在AWS EB上运行500

时间:2016-07-31 00:55:33

标签: django python-2.7 amazon-web-services elastic-beanstalk internal-server-error

我刚刚尝试编写一个托管在AWS Elastic Beanstalk上的简单Django应用程序。我可以在localhost上成功运行服务器。但是,当我在EB上部署它时,它失败了500错误。

这是我的项目树

.   
├── README.md   
├── db.sqlite3   
├── djangosite   
│   ├── __init__.py   
│   ├── settings.py   
│   ├── urls.py   
│   └── wsgi.py   
├── intro   
│   ├── __init__.py   
│   ├── admin.py   
│   ├── apps.py   
│   ├── migrations   
│   │   └── __init__.py   
│   ├── models.py   
│   ├── tests.py   
│   └── views.py   
├── manage.py   
├── requirement.txt   
└── templates   
    └── index.html

我没有在日志中找到正确时间的日志。通常500表示我的代码可能有问题。但如果我在本地启动服务器,它运行良好

$ python manage.py runserver

我试图让我们eb ssh登录该实例,发现我的代码所在的django中没有/opt/current/app

但我真的将Django == 1.9.8添加到requirement.txt。似乎eb没有安装django。它也不在/opt/python/run/venv/lib/python2.7/site-packages/

1 个答案:

答案 0 :(得分:1)

(我没有足够的声誉发表评论)

我假设您在生产服务器上启动了应用程序(您不会提及是否存在)。

您是否在生产服务器上更改了Debug = False?然后未捕获的异常导致500响应。在开发(本地)中使用Debug = True时,会返回Debug屏幕。