Skip to content

Commit 2cce450

Browse files
committed
feat(redirects): check for SSL cert/key before adding redirects
1 parent 7c49a49 commit 2cce450

File tree

1 file changed

+23
-14
lines changed

1 file changed

+23
-14
lines changed

src/helper/site-utils.php

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -273,22 +273,31 @@ function add_site_redirects( string $site_url, bool $ssl, bool $inherit ) {
273273
$cert_site_name = implode( '.', array_slice( explode( '.', $site_url ), 1 ) );
274274
}
275275

276-
if ( $has_www ) {
277-
$server_name = ltrim( $site_url, '.www' );
278-
} else {
279-
$server_name = 'www.' . $site_url;
280-
}
276+
// Check for existence of cert and key files for the cert_site_name
277+
$certs_dir = EE_ROOT_DIR . '/services/nginx-proxy/certs/';
278+
$crt_file = $certs_dir . $cert_site_name . '.crt';
279+
$key_file = $certs_dir . $cert_site_name . '.key';
280+
281+
if ( file_exists( $crt_file ) && file_exists( $key_file ) ) {
282+
if ( $has_www ) {
283+
$server_name = ltrim( $site_url, '.www' );
284+
} else {
285+
$server_name = 'www.' . $site_url;
286+
}
281287

282-
$conf_data = [
283-
'site_name' => $site_url,
284-
'cert_site_name' => $cert_site_name,
285-
'server_name' => $server_name,
286-
'ssl' => $ssl,
287-
$conf_ssl_policy => true,
288-
];
288+
$conf_data = [
289+
'site_name' => $site_url,
290+
'cert_site_name' => $cert_site_name,
291+
'server_name' => $server_name,
292+
'ssl' => $ssl,
293+
$conf_ssl_policy => true,
294+
];
289295

290-
$content = EE\Utils\mustache_render( SITE_TEMPLATE_ROOT . '/redirect.conf.mustache', $conf_data );
291-
$fs->dumpFile( $config_file_path, ltrim( $content, PHP_EOL ) );
296+
$content = EE\Utils\mustache_render( SITE_TEMPLATE_ROOT . '/redirect.conf.mustache', $conf_data );
297+
$fs->dumpFile( $config_file_path, ltrim( $content, PHP_EOL ) );
298+
} else {
299+
EE::log( sprintf( 'SSL cert/key missing for %s, skipping redirect config.', $cert_site_name ) );
300+
}
292301
}
293302

294303
/**

0 commit comments

Comments
 (0)