change error handling for let's encrypt checks
This commit is contained in:
parent
15faf3dfdc
commit
d7f0a5e36c
|
@ -34,18 +34,44 @@ include_once EVOADMIN_BASE . '../tpl/menu.tpl.php';
|
|||
|
||||
if (isset($_POST['submit'])) {
|
||||
$letsencrypt = new letsencryt();
|
||||
$error_message = '';
|
||||
|
||||
// check HTTP
|
||||
$checked_domains = $letsencrypt->checkRemoteResourceAvailability($_SESSION['letsencrypt-domains']);
|
||||
$failed_domains_http = array_diff($_SESSION['letsencrypt-domains'], $checked_domains);
|
||||
while (true) {
|
||||
// check domains list
|
||||
if (empty($_SESSION['letsencrypt-domains'])) {
|
||||
$error_message = "Erreur : la liste des domaines est vide.";
|
||||
break;
|
||||
}
|
||||
|
||||
// check if evoacme is installed
|
||||
$binaries_installed = $letsencrypt->isEvoacmeInstalled();
|
||||
if (!$binaries_installed) {
|
||||
$error_message = "Erreur : les binaires Evoacme ne sont pas installés.
|
||||
Veuillez contacter un administrateur.";
|
||||
break;
|
||||
}
|
||||
|
||||
// check HTTP
|
||||
$checked_domains = $letsencrypt->checkRemoteResourceAvailability($_SESSION['letsencrypt-domains']);
|
||||
$failed_domains = array_diff($_SESSION['letsencrypt-domains'], $checked_domains);
|
||||
if (!empty($failed_domains)) {
|
||||
$error_message = "Erreur : Le challenge HTTP a échoué pour le(s) domaine(s) ci-dessous.
|
||||
Merci de vérifier que le dossier <code>/.well-known/</code> est accessible.";
|
||||
break;
|
||||
}
|
||||
|
||||
if (empty($failed_domains_http) && !empty($checked_domains)) {
|
||||
// check DNS
|
||||
$valid_domains = $letsencrypt->checkDNSValidity($checked_domains);
|
||||
$failed_domains_dns = array_diff($checked_domains, $valid_domains);
|
||||
$failed_domains = array_diff($checked_domains, $valid_domains);
|
||||
if (!empty($failed_domains)) {
|
||||
$error_message = "Erreur : La vérification DNS a échoué pour les domaines ci-dessous.
|
||||
Merci de vérifier les enregistrements de type A et AAAA.";
|
||||
break;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
// page de base
|
||||
}
|
||||
|
||||
include_once EVOADMIN_BASE . '../tpl/webadmin-letsencrypt.tpl.php';
|
||||
include_once EVOADMIN_BASE . '../tpl/footer.tpl.php';
|
||||
|
|
|
@ -2,32 +2,18 @@
|
|||
|
||||
<?php
|
||||
if (isset($_POST['submit'])) {
|
||||
if (count($failed_domains_http) > 0) {
|
||||
echo '<h3 class="form-error">Erreur HTTP</h3>';
|
||||
if (!empty($error_message)) {
|
||||
echo '<span class="form-error">' . $error_message . '</span>';
|
||||
|
||||
echo '<p>';
|
||||
echo 'Le challenge HTTP a échoué pour le(s) domaine(s) ci-dessous.
|
||||
Merci de vérifier que le dossier <code>/.well-known/acme-challenge/</code> est accessible.';
|
||||
echo '</p>';
|
||||
|
||||
echo '<p>';
|
||||
foreach ($failed_domains_http as $failed_domain) {
|
||||
echo $failed_domain . "<br>";
|
||||
}
|
||||
echo '</p>';
|
||||
} elseif (count($failed_domains_dns) > 0) {
|
||||
echo '<h3 class="form-error">Erreur DNS</h3>';
|
||||
|
||||
echo '<p>';
|
||||
echo 'La vérification DNS a échoué pour les domaines ci-dessous.
|
||||
Merci de vérifier les enregistrements de type A et AAAA.';
|
||||
echo '</p>';
|
||||
|
||||
foreach ($failed_domains_dns as $failed_domain) {
|
||||
echo $failed_domain . "<br>";
|
||||
if (count($failed_domains) > 0) {
|
||||
echo '<p>';
|
||||
foreach ($failed_domains as $failed_domain) {
|
||||
echo $failed_domain . "<br>";
|
||||
}
|
||||
echo '</p>';
|
||||
}
|
||||
} else {
|
||||
echo "all checks succeeded";
|
||||
echo 'checks succeeded.';
|
||||
}
|
||||
} else {
|
||||
echo "<p>Les domaines suivants seront intégrés au certificat : </p>";
|
||||
|
|
Loading…
Reference in a new issue