diff --git a/framework/src/play/mvc/Http.java b/framework/src/play/mvc/Http.java index 2fef8f72c5..4906880e9d 100644 --- a/framework/src/play/mvc/Http.java +++ b/framework/src/play/mvc/Http.java @@ -405,7 +405,15 @@ private boolean isRequestSecure() { if (xForwardedSslHeader != null && "on".equals(xForwardedSslHeader.value())) { return true; } - + + // Check the less common "front-end-https" header, + // used apparently only by "Microsoft Internet Security and Acceleration Server" + // and Squid when using Squid as a SSL frontend. + Header frontEndHttpsHeader = headers.get("front-end-https"); + if (frontEndHttpsHeader != null && "on".equals(frontEndHttpsHeader.value().toLowerCase())) { + return true; + } + return false; }