【发布时间】:2015-01-08 14:12:12
【问题描述】:
我重构了一个已经部署(并且运行良好)的 Django 项目以使用设置目录而不是 settings.py 文件。项目结构如下图:
project/
app1/
app2/
project/
settings/
__init__.py
base.py
production.py
服务器已停止工作。我收到 502 错误。我相信这是因为 gunicorn 找不到设置文件了。我尝试将我的 wsgi 文件更改为使用生产而不是设置。
wsgi.py
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.production")
production.py
from .base import *
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
TEMPLATE_DEBUG = False
ALLOWED_HOSTS = ["site.com", "ip"]
base.py 是一些静态和媒体路由的默认设置。
问题:
如何告诉 gunicorn 我的新文件夹结构,以便它知道要运行的正确设置文件。
编辑:
新贵错误:gunicorn: Worker failed to boot.
第二个错误:Import Error: No module named project.wsgi
【问题讨论】:
-
重启 gunicorn 时会发生什么?你能发布你的新贵文件吗?
-
@dm03514 它立即终止并出现错误。我用两个有趣的更新了 OP。
-
@dm03514 我有一个额外的文件夹...有一个额外的项目文件夹包含项目...
-
您的项目文件夹中有 wsgi.py 文件吗?如果是,打开它并检查那里的设置路径。
标签: python django nginx gunicorn