Till Brehm
2016-07-20 8a1f4cf9991515f0ce7b7bcd3dc1c55274ab0370
Do not add www as subdomain to a letsencrypt ssl cert when the domain of the webiste is already www.example.com (and not example.com) even if auto subdomain is set to www.
2 files modified
10 ■■■■■ changed files
server/plugins-available/apache2_plugin.inc.php 5 ●●●●● patch | view | raw | blame | history
server/plugins-available/nginx_plugin.inc.php 5 ●●●●● patch | view | raw | blame | history
server/plugins-available/apache2_plugin.inc.php
@@ -1189,7 +1189,7 @@
            $sub_prefixes = array();
            //* be sure to have good domain
            if($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*") {
            if(substr($domain,0,4) != 'www.' && ($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*")) {
                $temp_domains[] = "www." . $domain;
            }
@@ -1207,7 +1207,7 @@
            if(is_array($aliasdomains)) {
                foreach($aliasdomains as $aliasdomain) {
                    $temp_domains[] = $aliasdomain['domain'];
                    if(isset($aliasdomain['subdomain']) && ($aliasdomain['subdomain'] != "none")) {
                    if(isset($aliasdomain['subdomain']) && substr($aliasdomain['domain'],0,4) != 'www.' && ($aliasdomain['subdomain'] == "www" OR $aliasdomain['subdomain'] == "*")) {
                        $temp_domains[] = "www." . $aliasdomain['domain'];
                    }
                }
@@ -1234,6 +1234,7 @@
            //if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
                // we must not skip if cert exists, otherwise changed domains (alias or sub) won't make it to the cert
                $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG);
                $app->log("Let's Encrypt SSL Cert domains: $lddomain", LOGLEVEL_DEBUG);
                
                $success = false;
                $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt'));
server/plugins-available/nginx_plugin.inc.php
@@ -1263,7 +1263,7 @@
            $sub_prefixes = array();
             //* be sure to have good domain
             if($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*") {
             if(substr($domain,0,4) != 'www.' && ($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*")) {
                $temp_domains[] = "www." . $domain;
            }
@@ -1281,7 +1281,7 @@
            if(is_array($aliasdomains)) {
                foreach($aliasdomains as $aliasdomain) {
                    $temp_domains[] = $aliasdomain['domain'];
                    if(isset($aliasdomain['subdomain']) && ($aliasdomain['subdomain'] != "none")) {
                    if(isset($aliasdomain['subdomain']) && substr($aliasdomain['domain'],0,4) != 'www.' && ($aliasdomain['subdomain'] == "www" OR $aliasdomain['subdomain'] == "*")) {
                        $temp_domains[] = "www." . $aliasdomain['domain'];
                    }
                    
@@ -1313,6 +1313,7 @@
            //if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
                // we must not skip if cert exists, otherwise changed domains (alias or sub) won't make it to the cert
                $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG);
                $app->log("Let's Encrypt SSL Cert domains: $lddomain", LOGLEVEL_DEBUG);
                
                $success = false;
                $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt'));