【发布时间】:2016-05-08 15:13:07
【问题描述】:
我正在尝试将 Django 应用程序部署到 heroku。关注此tutorial
在运行 heroku 本地网络(甚至是 python manage.py runserver)并调用服务器时,出现服务器错误 500。帮我解决这个错误。
这是我的settings.py 文件。 [允许的主机设置为 * 用于测试]
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp',
]
MIDDLEWARE_CLASSES = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# Update database configuration with $DATABASE_URL.
db_from_env = dj_database_url.config(conn_max_age=500)
DATABASES['default'].update(db_from_env)
【问题讨论】:
-
您应该设置error reporting emails 以便收到一封包含您的异常堆栈跟踪的电子邮件。
-
您没有提供足够的信息来帮助您。请提供可能与 500 状态代码相关联的异常,如果可能,请提供堆栈跟踪指向的代码。
-
@ihasadad 如果调试为假,则没有堆栈跟踪,如果调试为真,则错误本身不会出现
-
@schwobaseggl 由于在本地测试,即使配置了管理员也无法发送错误邮件
-
@KalyanDechiraju 然后您应该正确配置日志记录。如果没有任何帮助,请将整个视图代码包装在
try-except中并记录堆栈跟踪...在不知道异常及其来源的情况下,您将只能猜测。