The technical_error_view templates are nowhere near XHTML-compliant, so they should never be served with
DEFAULT_CONTENT_TYPE, instead they should explicitly specify text/html.
Index: django/views/debug.py
===================================================================
--- django/views/debug.py (revision 571)
+++ django/views/debug.py (working copy)
@@ -55,7 +55,7 @@
'settings' : settings_dict,
})
- return HttpResponseServerError(t.render(c))
+ return HttpResponseServerError(t.render(c), 'text/html')
def technical_404_response(request, exception):
"""
@@ -76,7 +76,7 @@
'request_protocol' : os.environ.get("HTTPS") == "on" and "https" or "http",
'settings' : dict([(k, getattr(settings, k)) for k in dir(settings) if k.isupper()]),
})
- return HttpResponseNotFound(t.render(c))
+ return HttpResponseNotFound(t.render(c), 'text/html')
def _get_lines_from_file(filename, lineno, context_lines):
"""