Ich kann meine App (über Django) zu Heroku bereitstellen, wenn DEBUG = True, aber wenn DEBUG = False, bekomme ich einen Serverfehler. Ich denke, es hat damit zu tun, wie ich meine statischen Dateien eingerichtet habe. Wenn ich "STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage' auskommentiere" "bekomme ich keine Fehlermeldung, aber die Seite ist komplett unformatiert. Hier ist der relevante settings.py Code:Whitenoise und/oder statische Dateien verursachen Serverfehler (500)
INSTALLED_APPS = [
...
'django.contrib.staticfiles',
...
]
ALLOWED_HOSTS = ['*']
PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT= os.path.join(PROJECT_ROOT, 'staticfiles')
STATIC_URL = '/static/'
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
STATICFILES_DIRS = (
os.path.join(PROJECT_ROOT, 'static'),
)
ich meine statischen Ordner in allen möglichen Orten (selben Ordner wie settings.py, im Stammordner usw.) hinzugefügt haben ohne Erfolg.
Irgendwelche Ideen?
Führen Sie 'Python manage.py Collectstatic' & versuchen Sie es erneut, und auch, was ist der Fehler genau nicht 500, setzen Sie DEBUG = False & versuchen Sie' python manage.py runserver', und überprüfen Sie die Stack-Trace –
Als eine allgemeine Regel sollten Sie den django runserver und die statischen Dateien in der Produktion vermeiden. Sie sollten sie nur für Entwicklungszwecke verwenden. – 2ps
Unzusammenhängend, aber wichtig: Bitte geben Sie aus Sicherheitsgründen die Domänen an, die Sie tatsächlich in den 'ALLOWED_HOSTS' Einstellungen verwenden. Benutze 'ALLOWED_HOSTS = ['*']' nicht, obwohl dies möglich ist. Siehe https://docs.djangoproject.com/en/1.10/ref/settings/#allowed-hosts für die zugehörigen Dokumente. – Peterino