我正在使用 Django + Nginx + uwsgi
设置.py:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'main',
]
if DEBUG:
STATIC_ROOT = os.path.join(BASE_DIR, "static/")
else:
STATIC_ROOT = "/var/www/mysite/static/"
STATIC_URL = '/static/'
if DEBUG:
MEDIA_ROOT = os.path.join(BASE_DIR, "media/")
else:
MEDIA_ROOT = "/var/www/mysite/media/"
MEDIA_URL = '/media/'
STATICFILES_FINDERS = [
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
更新代码后(在 DEBUG = True 中一切正常,静态文件加载正确)我在生产服务器上使用python manage.py collectstatic
它 DEBUG = False
,它收集管理静态,但它没有为“主”应用程序收集静态。
在调试模式下一切正常。
检查了 Nginx 的服务 - 它工作正常。
为什么“collectstatic”不从“主”应用程序收集静态?
UPD:我是个白痴。忘记在 git 中添加带有静态文件的目录。对不起。