SiteRedirectMiddleware

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from django.contrib.sites.models import Site
from django.http import HttpResponsePermanentRedirect
from django.conf import settings

class SiteRedirectMiddleware(object):
    def process_request(self, request):
        host = request.get_host()
        site = Site.objects.get_current()

        if site.domain in host:
            return None
        return HttpResponsePermanentRedirect('%s://%s%s' % (
                request.is_secure() and 'https' or 'http',
                site.domain,
                request.get_full_path(),
        ))

More like this

  1. Redirect Multiple Domains to a Single Domain by rpoulton 5 years, 7 months ago
  2. simple DomainsAliasMiddleware by matrix 4 years, 1 month ago
  3. Single Django App behind multiple Apache Proxies by chadmaine 6 years ago
  4. PermanentRedirectMiddleware by marinho 4 years, 10 months ago
  5. Configurable defaults for contrib.sites default Site during syncdb by chrischambers 1 year, 8 months ago

Comments

(Forgotten your password?)