diff --git a/ssl/alternc-ssl.install.php b/ssl/alternc-ssl.install.php index ba568910..041eef80 100644 --- a/ssl/alternc-ssl.install.php +++ b/ssl/alternc-ssl.install.php @@ -9,7 +9,9 @@ if ($argv[1] == "templates") { // install ssl.conf echo "[alternc-ssl] Installing ssl.conf template\n"; copy("/etc/alternc/templates/apache2/mods-available/ssl.conf","/etc/apache2/mods-available/ssl.conf"); - mkdir("/var/run/alternc-ssl"); + if (!is_dir('/var/run/alternc-ssl')) { + mkdir("/var/run/alternc-ssl"); + } chown("/var/run/alternc-ssl","alterncpanel"); chgrp("/var/run/alternc-ssl","alterncpanel"); // replace open_basedir line if necessary : @@ -64,4 +66,23 @@ if ($argv[1] == "before-reload") { $db->query("UPDATE sub_domaines SET web_action='DELETE' WHERE type='php52-mixssl';"); } + // Enable name-based virtual hosts in Apache2 : + $f = fopen("/etc/apache2/ports.conf", "rb"); + if (!$f) { + echo "FATAL: there is no /etc/apache2/ports.conf ! I can't configure name-based virtual hosts\n"; + } else { + $found = false; + while ($s = fgets($f, 1024)) { + if (preg_match(":^[^#]*NameVirtualHost.*443:", $s)) { + $found = true; + break; + } + } + fclose($f); + if (!$found) { + $f = fopen("/etc/apache2/ports.conf", "ab"); + fputs($f, "\n\n NameVirtualHost *:443\n\n\n"); + fclose($f); + } + } } // before-reload