mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
ISSUE-10615: Respect SS_BASE_URL scheme in CLI environment.
Additionally set _SERVER variables for HTTPS and SSL to respect SS_BASE_URL scheme when executing builds and tasks through CLI. This should solve base tags not being provided with the correct HTTP scheme. This is important to resolve mixed content issues and insecure requests.
This commit is contained in:
parent
ce53318d26
commit
4a1eb0c158
@ -64,6 +64,13 @@ class CLIRequestBuilder extends HTTPRequestBuilder
|
||||
$variables['_GET']['url'] = $variables['_SERVER']['argv'][1];
|
||||
$variables['_SERVER']['REQUEST_URI'] = $variables['_SERVER']['argv'][1];
|
||||
}
|
||||
|
||||
// Set 'HTTPS' and 'SSL' flag for CLI depending on SS_BASE_URL scheme value.
|
||||
$scheme = parse_url(Environment::getEnv('SS_BASE_URL') ?? '', PHP_URL_SCHEME);
|
||||
if ($scheme == 'https') {
|
||||
$variables['_SERVER']['HTTPS'] = 'on';
|
||||
$variables['_SERVER']['SSL'] = true;
|
||||
}
|
||||
|
||||
// Parse rest of variables as standard
|
||||
return parent::cleanEnvironment($variables);
|
||||
|
Loading…
Reference in New Issue
Block a user