#19295: runserver --insecure doesn't work with DEBUG False and
CachedStaticFilesStorage
-------------------------------------+--------------------
Reporter: Apreche | Owner: nobody
Type: Bug | Status: new
Component: contrib.staticfiles | Version: 1.4
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+--------------------
How to reproduce:
Enable the CachedStaticFilesStorage in your settings and turn DEBUG off.
{{{
DEBUG = False
STATICFILES_STORAGE =
'django.contrib.staticfiles.storage.CachedStaticFilesStorage'
}}}
Turn on the runserver with the insecure flag
{{{ $ python manage.py runserver --insecure }}}
Visit your runserver in your browser, and the static files will not load.
When using the default
django.contrib.staticfiles.storage.StaticFilesStorage the static files
will load.
The reason is because of this section in contrib/staticfiles.storage.py
{{{
100 def url(self, name, force=false):
101 """
102 Returns the real URL in DEBUG mode.
103 """
104 if settings.DEBUG and not force:
105 hashed_name, fragment = name, ''
106 else:
}}}
When DEBUG is False, the automatic static file serving in runserver is
disabled. But using runserver with --insecure will re-enable it. Because
the CachedStaticFilesStorage only looks at the DEBUG flag, it will not
work properly in this scenario. Perhaps that force parameter could be set
to True when the --insecure flag is passed to runserver?
Yes, this is an extremely rare and low-priority edge case, but still a
bug.
It's also not clear what the expected behavior is when both the --nostatic
and --insecure flags are passed to runserver simultaneously. They sort of
cancel each other out. Personally I feel the nostatic should take
priority.
--
Ticket URL: <https://code.djangoproject.com/ticket/19295>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit https://groups.google.com/groups/opt_out.