From 0680b7495f8c1fcde238e06d6840579152c511f6 Mon Sep 17 00:00:00 2001 From: Neil Williams Date: Thu, 28 Feb 2013 12:00:09 -0800 Subject: [PATCH] Override wsgi.url_scheme when c.secure is set. --- r2/r2/controllers/reddit_base.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/r2/r2/controllers/reddit_base.py b/r2/r2/controllers/reddit_base.py index 7fa0b1b0d..a8ab1b316 100644 --- a/r2/r2/controllers/reddit_base.py +++ b/r2/r2/controllers/reddit_base.py @@ -677,6 +677,14 @@ class MinimalController(BaseController): g.domain_prefix) c.secure = request.host in g.secure_domains + # wsgi.url_scheme is used in generating absolute urls, such as by webob + # for translating some of our relative-url redirects to rfc compliant + # absolute-url ones. TODO: consider using one of webob's methods of + # setting wsgi.url_scheme based on incoming request headers added by + # upstream things like stunnel/haproxy. + if c.secure: + request.environ["wsgi.url_scheme"] = "https" + #check if user-agent needs a dose of rate-limiting if not c.error_page: ratelimit_throttled()