From af00b76a180bc70f5483c791254e5b63ae9fa0ce Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Sun, 6 Dec 2015 12:54:36 +0200 Subject: [PATCH] Set X-Forwarded-Proto correctly yesodweb/yesod-scaffold#114 --- yesod-bin/Devel.hs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/yesod-bin/Devel.hs b/yesod-bin/Devel.hs index 5c71fac2..11146a05 100644 --- a/yesod-bin/Devel.hs +++ b/yesod-bin/Devel.hs @@ -188,7 +188,13 @@ reverseProxy opts iappPort = do let cert = $(embedFile "certificate.pem") key = $(embedFile "key.pem") tlsSettings = tlsSettingsMemory cert key - runTLS tlsSettings (setPort port defaultSettings) app + runTLS tlsSettings (setPort port defaultSettings) $ \req send -> do + let req' = req + { requestHeaders + = ("X-Forwarded-Proto", "https") + : requestHeaders req + } + app req' send httpProxy = run (develPort opts) proxyApp httpsProxy = runProxyTls (develTlsPort opts) proxyApp putStrLn "Application can be accessed at:\n"