@@ -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