summaryrefslogtreecommitdiff
path: root/django/middleware/common.py
diff options
context:
space:
mode:
authorAdrian Holovaty <adrian@holovaty.com>2005-10-05 23:36:17 +0000
committerAdrian Holovaty <adrian@holovaty.com>2005-10-05 23:36:17 +0000
commitc3fa47edb85fa0b3d77a3ca864990d6b5dba3ff0 (patch)
treeeb012f1c031c9b81c3d92e71a8fdc42fd940a528 /django/middleware/common.py
parent16f9b08611ddc5512e16d9fcb6ce405f2962d319 (diff)
downloaddjango-c3fa47edb85fa0b3d77a3ca864990d6b5dba3ff0.tar.gz
Added USE_FLAT_PAGES setting, which defaults to True.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@782 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django/middleware/common.py')
-rw-r--r--django/middleware/common.py34
1 files changed, 16 insertions, 18 deletions
diff --git a/django/middleware/common.py b/django/middleware/common.py
index ee6b68be7e..4abe4ee236 100644
--- a/django/middleware/common.py
+++ b/django/middleware/common.py
@@ -54,29 +54,27 @@ class CommonMiddleware:
return None
def process_response(self, request, response):
- """
- Check for a flatfile (for 404s) and calculate the Etag, if needed.
- """
-
- # If this was a 404, check for a flat file
+ "Check for a flat page (for 404s) and calculate the Etag, if needed."
if response.status_code == 404:
- try:
- response = flat_file(request, request.path)
- except exceptions.Http404:
+ if settings.USE_FLAT_PAGES:
+ try:
+ return flat_file(request, request.path)
+ except exceptions.Http404:
+ pass
+
+ if settings.SEND_BROKEN_LINK_EMAILS:
# If the referrer was from an internal link or a non-search-engine site,
# send a note to the managers.
- if settings.SEND_BROKEN_LINK_EMAILS:
- domain = request.META['HTTP_HOST']
- referer = request.META.get('HTTP_REFERER', None)
- is_internal = referer and (domain in referer)
- path = request.get_full_path()
- if referer and not _is_ignorable_404(path) and (is_internal or '?' not in referer):
- mail_managers("Broken %slink on %s" % ((is_internal and 'INTERNAL ' or ''), domain),
- "Referrer: %s\nRequested URL: %s\n" % (referer, request.get_full_path()))
- # If there's no flatfile we want to return the original 404 response
+ domain = request.META['HTTP_HOST']
+ referer = request.META.get('HTTP_REFERER', None)
+ is_internal = referer and (domain in referer)
+ path = request.get_full_path()
+ if referer and not _is_ignorable_404(path) and (is_internal or '?' not in referer):
+ mail_managers("Broken %slink on %s" % ((is_internal and 'INTERNAL ' or ''), domain),
+ "Referrer: %s\nRequested URL: %s\n" % (referer, request.get_full_path()))
return response
- # Use ETags, if requested
+ # Use ETags, if requested.
if settings.USE_ETAGS:
etag = md5.new(response.get_content_as_string('utf-8')).hexdigest()
if request.META.get('HTTP_IF_NONE_MATCH') == etag: