From 3332ddccc469237f0aa635ac312e5a42865d2eca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C3=B4me=20Chilliet?= <come@opensides.be>
Date: Tue, 28 Jun 2016 06:11:04 +0200
Subject: [PATCH] Fixes #4831 using HTTP_X_FORWARDED_HOST do detect external
 host name

---
 html/class_passwordRecovery.inc | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/html/class_passwordRecovery.inc b/html/class_passwordRecovery.inc
index 4d9e65497..30a0ab46c 100644
--- a/html/class_passwordRecovery.inc
+++ b/html/class_passwordRecovery.inc
@@ -179,9 +179,14 @@ class standAlonePage {
     if (isset($_SERVER['HTTPS']) && ($_SERVER["HTTPS"] == "on")) {
       $pageURL .= "s";
     }
-    $pageURL .= "://".$_SERVER["SERVER_NAME"];
-    if ($_SERVER["SERVER_PORT"] != "80") {
-      $pageURL .= ":".$_SERVER["SERVER_PORT"];
+    $pageURL .= '://';
+    if (!empty($_SERVER['HTTP_X_FORWARDED_HOST'])) {
+      $pageURL .= $_SERVER['HTTP_X_FORWARDED_HOST'];
+    } else {
+      $pageURL .= $_SERVER['SERVER_NAME'];
+      if ($_SERVER['SERVER_PORT'] != '80') {
+        $pageURL .= ':'.$_SERVER['SERVER_PORT'];
+      }
     }
     $pageURL .= $_SERVER["PHP_SELF"];
 
-- 
GitLab