49fd23ed86038fd5f9a9687e0d8f180438777c9a
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

1) <?php
Bernd Wurst Added license tags for CC0,...

Bernd Wurst authored 12 years ago

2) /*
3) This file belongs to the Webinterface of schokokeks.org Hosting
4) 
Bernd Wurst Lizenzinfos in eigenes Modu...

Bernd Wurst authored 10 years ago

5) Written 2008-2014 by schokokeks.org Hosting, namely
Bernd Wurst Added license tags for CC0,...

Bernd Wurst authored 12 years ago

6)   Bernd Wurst <bernd@schokokeks.org>
7)   Hanno Böck <hanno@schokokeks.org>
8) 
9) To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.
10) 
11) You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see 
12) http://creativecommons.org/publicdomain/zero/1.0/
13) 
14) Nevertheless, in case you use a significant part of this code, we ask (but not require, see the license) that you keep the authors' names in place and return your changes to the public. We would be especially happy if you tell us what you're going to do with this code.
15) */
16) 
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

17) require_once('inc/debug.php');
18) require_once('inc/security.php');
bernd neue Bilder, mehr SSL-Zerti...

bernd authored 14 years ago

19) require_once('inc/icons.php');
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

20) 
21) require_once('vhosts.php');
22) 
bernd Benutze überall title() sta...

bernd authored 13 years ago

23) title("Subdomains");
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

24) $error = '';
25) 
26) require_role(ROLE_SYSTEMUSER);
27) 
bernd VHost-Löschen als icon

bernd authored 16 years ago

28) global $prefix;
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

29) 
bernd Benutze überall title() sta...

bernd authored 13 years ago

30) output("<p>Mit dieser Funktion legen Sie fest, welche Domains und Subdomains als Webserver-Ressource verfügbar sein sollen und welches Verzeichnis die Dateien enthalten soll.</p>
bernd Beta-Hinweis im vhost-modul

bernd authored 16 years ago

31) <p>Änderungen an Ihren Einstellungen werden im 5-Minuten-Takt auf dem Server übernommen.</p>
32) ");
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

33) 
bernd Bugfix: Funktion-Dopplung v...

bernd authored 16 years ago

34) 
Bernd Wurst Link auf Website / Ermöglic...

Bernd Wurst authored 9 years ago

35) $domain = NULL;
36) if (isset($_REQUEST['domain']) && $_REQUEST['domain'] != '') {
37)   $domain = $_REQUEST['domain'];
38)   output('<p class="warning"><strong>Filter aktiv!</strong> Momentan werden nur Einstellungen für die Domain <strong>'.filter_input_general($domain).'</strong> angezeigt. Klicken Sie '.internal_link('', 'hier', 'domain=').' um alle Einstellungen anzuzeigen.</p>');
39) }
40) $vhosts = list_vhosts($domain);
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

41) $traffic_sum = 0;
Bernd Wurst Beta-Warnung bei aktivierte...

Bernd Wurst authored 8 years ago

42) $letsencrypt = false;
43) foreach ($vhosts as $vh) {
44)   if (strstr($vh['options'], 'letsencrypt')) {
45)     $letsencrypt = true;
46)   }
47) }
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

48) 
49) if (count($vhosts) > 0)
50) {
Bernd Wurst Lets Encrypt ist jetzt kein...

Bernd Wurst authored 7 years ago

51)   /*
Bernd Wurst Beta-Warnung bei aktivierte...

Bernd Wurst authored 8 years ago

52)   if ($letsencrypt) {
53)     warning("Sie haben für eine oder mehrere Domains die Nutzung eines Let's-Encrypt-Zertifikats aktiviert. Wir haben diese Funktion nach allgemeiner Verfügbarkeit von Let's Encrypt umgehend freigeschaltet und sind mit der ersten Erfahrungen sehr zufrieden. Dennoch befindet sich Let's Encrypt momentan im Beta-Betrieb (d.h. Testbetrieb). Störungen sind daher nicht auszuschließen.");
54)     warning("Die Bereitstellung eines Zertifikats von Let's Encrypt kann momentan bis zu 15 Minuten in Anspruch nehmen.");
55)   }
Bernd Wurst Lets Encrypt ist jetzt kein...

Bernd Wurst authored 7 years ago

56)   */
Bernd Wurst Ermögliche das Auswählen de...

Bernd Wurst authored 11 years ago

57)   if (count($vhosts) > 10) {
58)     addnew('edit', 'Neue Domain bzw. Subdomain einrichten');
59)   }
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

60)   output("<table><tr><th>(Sub-)Domain</th><th></th><th>Zusätzliche Alias-Namen</th><th>Protokoll</th><th>HTTPS</th><th>Traffic<sup>*</sup></th><th>PHP</th><th>Lokaler Pfad<sup>**</sup></th></tr>\n");
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

61) 
62)   $even = True;
bernd Aliases editieren

bernd authored 16 years ago

63) 
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

64)   foreach ($vhosts as $vhost)
65)   {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

66)     $even = ! $even;
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

67)     $fqdn = $vhost['fqdn'];
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

68)     $class = 'odd';
69)     if ($even) $class = 'even';
Bernd Wurst Link auf Website / Ermöglic...

Bernd Wurst authored 9 years ago

70)     $proto = 'http';
71)     if ($vhost['ssl'] == 'https' || $vhost['ssl'] == 'forward') {
72)       $proto = 'https';
73)     }
74)     $linkuri = $vhost['fqdn'];
75)     if (strstr($vhost['options'], 'aliaswww')) {
76)       $linkuri = "www.".$vhost['fqdn'];
77)     }
78)     output("<tr class=\"{$class}\"><td>".internal_link('edit', $fqdn, "vhost={$vhost['id']}", 'title="Einstellungen bearbeiten"')."</td><td><a href=\"{$proto}://{$linkuri}\">".other_icon('world_link.png', 'Website aufrufen')."</a> ".internal_link('save', icon_delete("»{$vhost['fqdn']}« löschen"), 'action=delete&vhost='.$vhost['id'] )."</td><td>");
bernd Weniger Datenbankzugriffe b...

bernd authored 14 years ago

79)     $aliases = get_all_aliases($vhost);
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

80)     $tmp = '';
81)     if (count($aliases) > 0)
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

82)     {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

83)       foreach ($aliases as $alias)
84)       {
85)         $tmp .= $alias['fqdn'].'<br />';
86)       }
87)     } else {
88)       $tmp = '<em>- keine -</em>';
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

89)     }
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

90)     output(internal_link('aliases', $tmp, 'vhost='.$vhost['id'], 'title="Aliase verwalten"'));
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

91)     output('</td>');
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

92)     $logfiles = 'Kein Log';
bernd Logfile-Status in der vhost...

bernd authored 16 years ago

93)     if ($vhost['logtype'] == 'default')
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

94)       $logfiles = 'Zugriffe ';
bernd Logfile-Status in der vhost...

bernd authored 16 years ago

95)     elseif ($vhost['logtype'] == 'anonymous')
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

96)       $logfiles = 'Anonym';
bernd Logfile-Status in der vhost...

bernd authored 16 years ago

97)     if ($vhost['errorlog'] == 1)
98)     {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

99)       if ($vhost['logtype'] == NULL)
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

100)         $logfiles = 'Fehler';
bernd Logfile-Status in der vhost...

bernd authored 16 years ago

101)       else
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

102)         $logfiles .= ' + Fehler';
bernd Logfile-Status in der vhost...

bernd authored 16 years ago

103)     }
bernd Webalizer/Statistik-Funktio...

bernd authored 14 years ago

104)     $stats = $vhost['stats'] ? internal_link("showstats", other_icon("chart_bar.png", "Statistiken anzeigen"), "vhost={$vhost['id']}").' ' : '';
105)     output("<td>{$stats}{$logfiles}</td>");
bernd Neue Zertifikatsverwaltung

bernd authored 14 years ago

106)   
107)     if ($vhost['ssl'] == 'http')
108)     {
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

109)       output("<td>".icon_disabled('HTTPS ausgeschaltet')."</td>");
bernd Neue Zertifikatsverwaltung

bernd authored 14 years ago

110)     }
Bernd Wurst Add lets encrypt logo

Bernd Wurst authored 8 years ago

111)     elseif (strstr($vhost['options'], "letsencrypt") && $vhost['cert'])
112)     {
Bernd Wurst Zeige Warning wenn Lets Enc...

Bernd Wurst authored 8 years ago

113)       $forward = '';
114)       if ($vhost['ssl'] == 'forward') {
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

115)         $forward = " ".other_icon("refresh.png", 'Auf HTTPS umleiten');
Bernd Wurst Zeige Warning wenn Lets Enc...

Bernd Wurst authored 8 years ago

116)       } else {
117)         $forward = " ".other_icon("warning.png", 'Ungeschützter Aufruf weiterhin möglich');
118)       }
119)       output("<td>".other_icon("letsencrypt.png", "Automatische Zertifikatsverwaltung mit Let's Encrypt").$forward."</td>");
Bernd Wurst Add lets encrypt logo

Bernd Wurst authored 8 years ago

120)     }
bernd Neue Zertifikatsverwaltung

bernd authored 14 years ago

121)     elseif ($vhost['cert'])
122)     {
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

123)       output("<td>".other_icon("secure.png", "HTTPS mit eigenem Zertifikat")."</td>");
Bernd Wurst Icons für LE-Zertifikat

Bernd Wurst authored 8 years ago

124)     }
125)     elseif (strstr($vhost['options'], "letsencrypt")) {
126)       // Letsencrypt gewählt aber noch nicht aktiv
127)       $message = "Let's Encrypt-Zertifikat ist noch nicht bereit";
Bernd Wurst Add lets encrypt logo

Bernd Wurst authored 8 years ago

128)       output("<td>".other_icon("letsencrypt.png", $message).icon_warning($message)."</td>");
bernd Neue Zertifikatsverwaltung

bernd authored 14 years ago

129)     }
130)     else
131)     {
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

132)       output("<td>".icon_enabled('HTTPS eingeschaltet')."</td>");
bernd Neue Zertifikatsverwaltung

bernd authored 14 years ago

133)     }
134) 
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

135)     $traffic = traffic_month($vhost['id']);
136)     $traffic_sum += (int) $traffic;
137)     $traffic_string = $traffic.' MB';
138)     if ($traffic > 1024) {
139)       $traffic_string = round($traffic / 1024, 2).' GB';
140)     }
141)     if ($traffic === NULL) {
142)       $traffic_string = '--';
143)     }
144)     output("<td style=\"text-align: right;\">{$traffic_string}</td>");
145) 
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

146)     if ($vhost['is_webapp'] == 1) {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

147)       output('<td colspan="2"><em><strong>Sonderanwendung:</strong> Vorinstallierte Webanwendung</em></td>');
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

148)     }
149)     elseif ($vhost['is_dav'] == 1) {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

150)       output('<td colspan="2"><em><strong>Sonderanwendung:</strong> WebDAV</em></td>');
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

151)     }
152)     elseif ($vhost['is_svn'] == 1) {
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

153)       output('<td colspan="2"><em><strong>Sonderanwendung:</strong> Subversion-Server</em></td>');
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

154)     }
155)     else {
156)       $php = $vhost['php'];
157)       switch ($php)
158)       {
Hanno Böck add PHP 7.2 support, re-cre...

Hanno Böck authored 6 years ago

159)         /* To create new PHP icon:
160)            convert ok.png -gravity center -draw "text 0,0 '7.2'" ok-php72.png
161)         */
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

162)         case NULL:
bernd neue Bilder, mehr SSL-Zerti...

bernd authored 14 years ago

163)           $php = icon_disabled('PHP ausgeschaltet');
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

164)           break;
Hanno Böck php 5.6 logo, reorganize lo...

Hanno Böck authored 9 years ago

165)         case 'php56':
166)           $php = icon_enabled_phpxx('PHP in Version 5.6 eingeschaltet', 5, 6);
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

167)           break;
Bernd Wurst PHP <= 5.5 entfernt und Vor...

Bernd Wurst authored 7 years ago

168)         case 'fpm70':
Hanno Böck PHP 7.0 support

Hanno Böck authored 8 years ago

169)           $php = icon_enabled_phpxx('PHP in Version 7.0 eingeschaltet', 7, 0);
170)           break;
Bernd Wurst PHP <= 5.5 entfernt und Vor...

Bernd Wurst authored 7 years ago

171)         case 'fpm71':
172)           $php = icon_enabled_phpxx('PHP in Version 7.1 eingeschaltet', 7, 1);
173)           break;
Hanno Böck add PHP 7.2 support, re-cre...

Hanno Böck authored 6 years ago

174)         case 'fpm72':
175)           $php = icon_enabled_phpxx('PHP in Version 7.2 eingeschaltet', 7, 2);
176)           break;
bernd VHosts-Modul mit neuem Layo...

bernd authored 16 years ago

177)       }
178)       output("<td>{$php}</td>");
179)       if ($vhost['docroot_is_default'] == 1)
180)         output("<td><span style=\"color:#777;\">{$vhost['docroot']}</span></td>");
181)       else
182)         output("<td><strong>{$vhost['docroot']}</strong></td>");
183)     }
bernd mod_php deprecated, zwang z...

bernd authored 15 years ago

184)     output("</tr>\n");
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

185)   }
bernd VHosts anlegen geht auch we...

bernd authored 16 years ago

186)   output('</table>');
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

187)   if ($traffic_sum > 0) {
188)     $traffic_string = $traffic_sum.' MB';
189)     if ($traffic_sum > 1024) {
190)       $traffic_string = round($traffic_sum / 1024, 2).' GB';
191)     }
schokokeks.org web services Typo

schokokeks.org web services authored 10 years ago

192)     output('<p><strong>Traffic insgesamt: '.$traffic_string.'</strong> in den letzten 30 Tagen</p>');
Bernd Wurst Traffic-Statistik im Webint...

Bernd Wurst authored 11 years ago

193)   }
194)   output('<p style="font-size: 90%;"><sup>*</sup>)&#160;Dieser Wert stellt den Datenverkehr dieser Website für die letzten 30 Tage dar.</p>');
195)   output('<p style="font-size: 90%;"><sup>**</sup>)&#160;schwach geschriebene Pfadangaben bezeichnen die Standardeinstellung. Ist ein Pfad fett dargestellt, so haben Sie einen davon abweichenden Wert eingegeben.</p>');
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

196) }
bernd Deutlich machen wenn keine...

bernd authored 14 years ago

197) else // keine VHosts vorhanden
198) {
199)   output("<p><strong><em>Bisher haben Sie keine Domain bzw. Subdomain eingerichtet.</em></strong></p>");
200) }
bernd neues VHosts-Modul (unbenut...

bernd authored 16 years ago

201) 
bernd addnew() eingeführt

bernd authored 14 years ago

202) addnew('edit', 'Neue Domain bzw. Subdomain einrichten');
203) 
Bernd Wurst Interface für Zertifikate i...

Bernd Wurst authored 7 years ago

204) output('<p>Bei passenden Einstellungen wird für jede Ihrer Websites automatisch ein Zertifikat von Let\'s Encrypt verwaltet und regelmäßig erneuert. Wenn Sie ein Zertifikat einsetzen möchten, das von einer anderen Zertifizierungsstelle ausgestellt ist, können Sie dieses hier hochladen.</p>');
205) addnew('newcert', 'Ein eigenes HTTPS-Zertifikat eintragen');
206)