summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2010-01-17 12:30:41 +0000
committeralecpl <alec@alec.pl>2010-01-17 12:30:41 +0000
commit76c94b6ba8a8e306f89f1ee908cb411374e4f2d8 (patch)
tree0983708ce46af2bf1802340a183f5b118f69d576
parent8490014ffe2652b0065e3d3e0a68c3e9e0bdde4a (diff)
- Fix 'force_https' to specified port when URL contains a port number (#1486411)
-rw-r--r--CHANGELOG1
-rw-r--r--index.php4
2 files changed, 4 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 7a44f89dd..3983e243d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail
===========================
+- Fix 'force_https' to specified port when URL contains a port number (#1486411)
- Fix to-text converting of HTML entities inside b/strong/th/hX tags (#1486422)
- Bug in spellchecker suggestions when server charset != UTF8 (#1486406)
- Managesieve: Fix requires generation for multiple actions (#1486397)
diff --git a/index.php b/index.php
index e9b3676e9..a7dd0fe53 100644
--- a/index.php
+++ b/index.php
@@ -67,7 +67,9 @@ if ($RCMAIL->action=='error' && !empty($_GET['_code'])) {
if (empty($_SESSION['user_id']) && ($force_https = $RCMAIL->config->get('force_https', false))) {
$https_port = is_bool($force_https) ? 443 : $force_https;
if (!rcube_https_check($https_port)) {
- header('Location: https://' . $_SERVER['HTTP_HOST'] . ($https_port != 443 ? ':' . $https_port : '') . $_SERVER['REQUEST_URI']);
+ $host = preg_replace('/:[0-9]+$/', '', $_SERVER['HTTP_HOST']);
+ $host .= ($https_port != 443 ? ':' . $https_port : '');
+ header('Location: https://' . $host . $_SERVER['REQUEST_URI']);
exit;
}
}