diff --git a/core/trunk/core/class/Url.php b/core/trunk/core/class/Url.php
index 515b866f364ebc034f7fbea74ae10612c1d2e854..a79095e410e7765242229f533cf77c4955308691 100644
--- a/core/trunk/core/class/Url.php
+++ b/core/trunk/core/class/Url.php
@@ -197,8 +197,9 @@ class Url
     {
         if(array_key_exists('HTTP_X_FORWARDED_PORT', $_SERVER)) {
             return $_SERVER['HTTP_X_FORWARDED_PORT'];
-        } else if (array_key_exists('HTTP_X_FORWARDED_HOST', $_SERVER)) {
-            return '80';
+        } else if (array_key_exists('HTTP_X_FORWARDED_PROTO', $_SERVER)) {
+        if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {return '443';}
+            else {return '80';}
         } else {
             return $_SERVER['SERVER_PORT'];
         }