diff --git a/django/core/handlers/modpython.py b/django/core/handlers/modpython.py index 7c4bbb3082..f98566be96 100644 --- a/django/core/handlers/modpython.py +++ b/django/core/handlers/modpython.py @@ -159,8 +159,8 @@ class ModPythonHandler(BaseHandler): # Convert our custom HttpResponse object back into the mod_python req. req.content_type = response['Content-Type'] - for key, value in response.headers.items(): - if key != 'Content-Type': + for key, value in response.items(): + if key != 'content-type': req.headers_out[str(key)] = str(value) for c in response.cookies.values(): req.headers_out.add('Set-Cookie', c.output(header='')) diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py index 99d400d1bb..6fe24f5d13 100644 --- a/django/core/handlers/wsgi.py +++ b/django/core/handlers/wsgi.py @@ -208,7 +208,7 @@ class WSGIHandler(BaseHandler): except KeyError: status_text = 'UNKNOWN STATUS CODE' status = '%s %s' % (response.status_code, status_text) - response_headers = [(str(k), str(v)) for k, v in response.headers.items()] + response_headers = [(str(k), str(v)) for k, v in response.items()] for c in response.cookies.values(): response_headers.append(('Set-Cookie', str(c.output(header='')))) start_response(status, response_headers) diff --git a/django/http/__init__.py b/django/http/__init__.py index 1de0ffb1df..1b80237290 100644 --- a/django/http/__init__.py +++ b/django/http/__init__.py @@ -274,6 +274,12 @@ class HttpResponse(object): return self._headers.has_key(header.lower()) __contains__ = has_header + + def items(self): + return self._headers.items() + + def get(self, header, alternate): + return self._headers.get(header, alternate) def set_cookie(self, key, value='', max_age=None, expires=None, path='/', domain=None, secure=None): self.cookies[key] = value diff --git a/django/middleware/gzip.py b/django/middleware/gzip.py index 9b2a5f3d22..7fd0d82419 100644 --- a/django/middleware/gzip.py +++ b/django/middleware/gzip.py @@ -20,7 +20,7 @@ class GZipMiddleware(object): # Avoid gzipping if we've already got a content-encoding or if the # content-type is Javascript (silly IE...) - is_js = "javascript" in response.headers.get('Content-Type', '').lower() + is_js = "javascript" in response.get('Content-Type', '').lower() if response.has_header('Content-Encoding') or is_js: return response