diff options
| author | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2009-10-21 08:47:40 +0000 |
|---|---|---|
| committer | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2009-10-21 08:47:40 +0000 |
| commit | 971464522bc359af8629c003dffbe05388f169b3 (patch) | |
| tree | bb8908403ca3b801235cb7aece7f01a0f0935766 /roundcubemail/index.php | |
| parent | 23ed1163672cf6db4b464a4084e9b616dd75b20f (diff) | |
Revert r3038 and allow to specify the port as value of force_https
git-svn-id: https://svn.roundcube.net/trunk@3049 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/index.php')
| -rw-r--r-- | roundcubemail/index.php | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/roundcubemail/index.php b/roundcubemail/index.php index 4ae71e1cf..e0956b4ff 100644 --- a/roundcubemail/index.php +++ b/roundcubemail/index.php @@ -63,6 +63,15 @@ if ($RCMAIL->action=='error' && !empty($_GET['_code'])) { raise_error(array('code' => hexdec($_GET['_code'])), FALSE, TRUE); } +// check if https is required (for login) and redirect if necessary +if (empty($_SESSION['user_id']) && ($force_https = $RCMAIL->config->get('force_https', false))) { + $https_port = is_bool($force_https) ? 443 : $force_https; + if (!(isset($_SERVER['HTTPS']) || $_SERVER['SERVER_PORT'] == $use_https || $RCMAIL->config->get('use_https'))) { + header('Location: https://' . $_SERVER['HTTP_HOST'] . ($https_port != 443 ? ':' . $https_port : '') . $_SERVER['REQUEST_URI']); + exit; + } +} + // trigger startup plugin hook $startup = $RCMAIL->plugins->exec_hook('startup', array('task' => $RCMAIL->task, 'action' => $RCMAIL->action)); $RCMAIL->set_task($startup['task']); |
