- July 24, 2008
- middleware redirect permanent seo
- 0 (after 0 ratings)
This is a simple middleware that redirects the exactly URL requested with the correct domain. It is useful when you have more than one domain (most of cases with "www." or IP) to access a website.
To make it works, download the snippet file as the name "permanent_redirect.py" and add its path as the first item in MIDDLEWARE_CLASSES setting in settings.py.
Later you must inform a setting called
HTTP_HOST_DOMAIN with the correct domain.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
from django.conf import settings from django.http import HttpResponsePermanentRedirect class PermanentRedirectMiddleware(object): def process_request(self, request): if hasattr(settings, 'HTTP_HOST_DOMAIN') and\ 'HTTP_HOST' in request.META and \ request.META['HTTP_HOST'] != settings.HTTP_HOST_DOMAIN: return HttpResponsePermanentRedirect("http%s://%s%s"%( request.is_secure() and 's' or '', settings.HTTP_HOST_DOMAIN, request.get_full_path(), ) )
More like this
- simple DomainsAliasMiddleware by matrix 6 years ago
- SiteRedirectMiddleware by jezdez 6 years, 8 months ago
- URL redirects middleware by gonz 7 years, 4 months ago
- Redirect Multiple Domains to a Single Domain by rpoulton 7 years, 6 months ago
- Decorator to modify reverse() to render SSL urls by AndrewIngram 5 years, 11 months ago