From 126d9e1b499663e72cc795906bdbcd333aceaf0a Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Fri, 2 Mar 2012 22:35:26 +0000 Subject: Fixed #17817 -- Modified LocalMiddleware to use full URLs when redirecting to i18n URLs. Thanks to Paul for keeping an eye on the standards. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17633 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/middleware/locale.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'django') diff --git a/django/middleware/locale.py b/django/middleware/locale.py index 77113e2987..628782b181 100644 --- a/django/middleware/locale.py +++ b/django/middleware/locale.py @@ -33,9 +33,12 @@ class LocaleMiddleware(object): language_path = '/%s%s' % (language, request.path_info) if settings.APPEND_SLASH and not language_path.endswith('/'): language_path = language_path + '/' + if is_valid_path(language_path, urlconf): - return HttpResponseRedirect( - '/%s%s' % (language, request.get_full_path())) + language_url = "%s://%s/%s%s" % ( + request.is_secure() and 'https' or 'http', + request.get_host(), language, request.get_full_path()) + return HttpResponseRedirect(language_url) translation.deactivate() patch_vary_headers(response, ('Accept-Language',)) -- cgit v1.3