From 5d019bf55f67d9b0f657f7de0f6a38af6c9234dc Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Mon, 11 Mar 2019 12:13:40 +0100
Subject: [PATCH] - added new webroot map argument to cli call of certbot on
 versions >= 0.31, should fix #5258

---
 server/lib/classes/letsencrypt.inc.php | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php
index 4f681cc485..3807149c1c 100644
--- a/server/lib/classes/letsencrypt.inc.php
+++ b/server/lib/classes/letsencrypt.inc.php
@@ -284,7 +284,17 @@ class letsencrypt {
                     } else {
                         $acme_version = 'https://acme-v01.api.letsencrypt.org/directory';
                     }
-                    $letsencrypt_cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $cli_domain_arg --webroot-path /usr/local/ispconfig/interface/acme";
+					if ($letsencrypt_version >= 0.31) {
+						$webroot_map = array();
+						for($i = 0; $i < count($temp_domains); $i++) {
+							$webroot_map[$temp_domains[$i]] = '/usr/local/ispconfig/interface/acme';
+						}
+						$webroot_args = "--webroot-map " . escapeshellarg(str_replace(array("\r", "\n"), '', json_encode($webroot_map)));
+					} else {
+						$webroot_args = "$cli_domain_arg --webroot-path /usr/local/ispconfig/interface/acme";
+					}
+					
+                    $letsencrypt_cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $webroot_args";
 					$success = $app->system->_exec($letsencrypt_cmd);
 				}
 			} else {
-- 
GitLab