我的django应用在cpanel上运行(我不确定这是否是我的问题
django应用或cpanel服务器),则在设置调试模式True
时。我可以看到所有媒体文件,例如配置文件图片或pdf文件等。但是,当设置调试模式False
时,您将看不到该应用程序上的媒体文件。这是我在settings.py
文件上的配置。
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
STATIC_URL = '/static/'
STATIC_ROOT = '<app-directory>/public_html/static'
# Media files
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
# Crispy Form Theme - Bootstrap 3
CRISPY_TEMPLATE_PACK = 'bootstrap3'
# For Bootstrap 3, change error alert to 'danger'
from django.contrib import messages
MESSAGE_TAGS = {
messages.ERROR: 'danger'
}
答案 0 :(得分:1)
要部署生产服务器,您需要设置3项内容
停用DEBUG配置:
DEBUG = False
这将禁用所有额外的开发功能。
在设置文件中定义静态根目录:
STATIC_ROOT ='/ this / is / a / path / to / statics'
这表示所有静态文件应保存在哪里。
运行命令以收集所有静态文件:
python manage.py collectstatic
这会将所有静态文件保存在STATIC_ROOT
配置的目录中
有关部署的官方文档: https://docs.djangoproject.com/en/2.1/howto/deployment/checklist/#static-root-and-static-url