【发布时间】:2012-01-12 02:29:28
【问题描述】:
我正在尝试为 django 应用程序 (https://bitbucket.org/yilmazhuseyin/django-sslredirector) 编写一个 ssl 重定向实用程序。我的问题是当我将页面从 http 重定向到 https 时,我无法理解我处于安全连接状态(当我调用 request.is_secure 时它返回 false)。我认为对此有一个 hack,不知何故称为 Webfaction,我无法真正了解它是如何工作的。这是webfaction案例的is_secure方法
def _is_secure(self, request):
if request.is_secure():
return True
#Handle the Webfaction case until this gets resolved in the request.is_secure()
if 'HTTP_X_FORWARDED_SSL' in request.META:
return request.META['HTTP_X_FORWARDED_SSL'] == 'on'
我的问题是当我将我的页面从 http 重定向到 https 时,request.is_secure 方法仍然返回 false(尽管我在 https 上的事件)并且我不断地将我的页面重定向到 https。 有什么方法可以了解我是否只是从 https 重定向?
我能找到的最佳来源是http://djangosnippets.org/snippets/880/,但它不适合我
【问题讨论】: