|
|
@@ -270,7 +270,40 @@ if (!empty($_POST['save'])) {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ // Regenerate LE if aliases are different
|
|
|
+ if ((!empty($_POST['v_ssl'])) && ( $v_letsencrypt == 'yes' ) && (!empty($_POST['v_letsencrypt'])) && empty($_SESSION['error_msg'])) {
|
|
|
+
|
|
|
+ // If aliases are different from stored aliases
|
|
|
+ if (array_diff($valiases,$aliases) || array_diff($aliases,$valiases)) {
|
|
|
+
|
|
|
+ // Add certificate with new aliases
|
|
|
+ $l_aliases = str_replace("\n", ',', $v_aliases);
|
|
|
+ exec (HESTIA_CMD."v-add-letsencrypt-domain ".$user." ".escapeshellarg($v_domain)." ".escapeshellarg($l_aliases)." ''", $output, $return_var);
|
|
|
+ check_return_code($return_var,$output);
|
|
|
+ unset($output);
|
|
|
+ $v_letsencrypt = 'yes';
|
|
|
+ $v_ssl = 'yes';
|
|
|
+ $restart_web = 'yes';
|
|
|
+ $restart_proxy = 'yes';
|
|
|
+
|
|
|
+ exec (HESTIA_CMD."v-list-web-domain-ssl ".$user." ".escapeshellarg($v_domain)." json", $output, $return_var);
|
|
|
+ $ssl_str = json_decode(implode('', $output), true);
|
|
|
+ unset($output);
|
|
|
+ $v_ssl_crt = $ssl_str[$v_domain]['CRT'];
|
|
|
+ $v_ssl_key = $ssl_str[$v_domain]['KEY'];
|
|
|
+ $v_ssl_ca = $ssl_str[$v_domain]['CA'];
|
|
|
+ $v_ssl_subject = $ssl_str[$v_domain]['SUBJECT'];
|
|
|
+ $v_ssl_aliases = $ssl_str[$v_domain]['ALIASES'];
|
|
|
+ $v_ssl_not_before = $ssl_str[$v_domain]['NOT_BEFORE'];
|
|
|
+ $v_ssl_not_after = $ssl_str[$v_domain]['NOT_AFTER'];
|
|
|
+ $v_ssl_signature = $ssl_str[$v_domain]['SIGNATURE'];
|
|
|
+ $v_ssl_pub_key = $ssl_str[$v_domain]['PUB_KEY'];
|
|
|
+ $v_ssl_issuer = $ssl_str[$v_domain]['ISSUER'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if ((!empty($v_stats)) && ($_POST['v_stats'] == $v_stats) && (empty($_SESSION['error_msg']))) {
|
|
|
// Update statistics configuration when changing domain aliases
|
|
|
$v_stats = escapeshellarg($_POST['v_stats']);
|