MDL-58318 setuplib: Redirect on https mismatch

When the wwwroot indicates https support and a page is accessed over http,
redirect to the wwwroot. This is a better experience than displaying an error.
This commit is contained in:
Damyon Wiese
2017-05-24 13:42:34 +08:00
parent 4680221da4
commit d4d414694a
+5 -1
View File
@@ -897,7 +897,11 @@ function initialise_fullme() {
// (That is, the Moodle server uses http, with an external box translating everything to https).
if (empty($CFG->sslproxy)) {
if ($rurl['scheme'] === 'http' and $wwwroot['scheme'] === 'https') {
print_error('sslonlyaccess', 'error');
if (defined('REQUIRE_CORRECT_ACCESS') && REQUIRE_CORRECT_ACCESS) {
print_error('sslonlyaccess', 'error');
} else {
redirect($CFG->wwwroot, get_string('wwwrootmismatch', 'error', $CFG->wwwroot), 3);
}
}
} else {
if ($wwwroot['scheme'] !== 'https') {