Modul domain
Funktionen
domain.search
-
Suche Domain nach den im Befehlsausdruck angegebenen Feldern und Werten
domain.add
-
Füge eine neue Domain nach den im Befehlsausdruck angegebenen Feldern und Werten hinzu.
domain.update
-
Aktualisiere eine Domain nach den im Befehlsausdruck angegebenen Feldern und Werten.
domain.remove
-
Lösche eine Domain nach den im Befehlsausdruck angegebenen Feldern und Werten.
Editierbare Felder
Das HSAdmin-Modul domain
kann entsprechend der folgenden Befehlssyntax von HSAdmin
Felder setzen oder verändern:
domain.function({where:{field:'value',...}, set:{field:'value',...}})
Im Modul domain
stehen folgende Felder zur Verfügung.
name
-
Name einer Domain
user
-
Name des Domain-Administrators
validsubdomainnames
-
leichtgewichtige Subdomains in diesem Virtual-Host des Webservers, gültige Werte:
*
für beliebige Subdomains oder eine kommaseparierte Liste:www,blog,other
domainoptions
-
im Parameter
domainoptions
wird ein Array mit allen Domain-Optionen erwartet, die aktiv sein sollen. Werte, die nicht aufgezählt sind, werden inaktiv gesetzt!
Folgende Domain-Optionen werden unterstützt:
E-Mail-Optionen:
greylisting
-
E-Mails werden verzögert durch den Mailserver angenommen, siehe
Greylisting
. Ist die Option deaktivert, werden E-Mails ohne Verzögerung angenommen. autoconfig
-
Eine Unterstützung für die Konfiguration von E-Mail-Programmen durch die Verfahren "Autoconfig" (Mozilla) und "Autodiscover" (Microsoft) wird für die Domain eingeschaltet
dkim
-
ausgehende E-Mails werden auf dem zuständigen Server mit einer DKIM-Signatur versehen. Für die Signatur wird ein geheimer Schlüssel verwendet. Der öffentliche Schlüssel zu diesem Schlüsselpaar muss im DNS für die Domain hinterlegt sein, bevor diese Option aktiviert wird!
backupmxforexternalmx
-
Der Paket-Hive wird als Weiterleitung (transport) beim Mail-In-Server eingetragen. Ist die Option aktiv, ist der Hostsharing-Mail-In-Server Backup-MX. Der eigentliche Mailserver befindet sich außerhalb der Infrastruktur von Hostsharing (z.B. anderer Provider, DSL-Anschluss mit fester IP)
Die Optionen autoconfig
, backupmxforexternalmx
und dkim
erfordern Änderungen am Zonefile einer Domain.
Apache-Webserver-Optionen:
multiviews
-
Der Webserver berücksichtigt Einstellungen im Browser beim Abruf einer Domain (z.B. eine bevorzugte Sprache). Die Option kann mit einer
.htaccess
-Datei für jedes Verzeichnis konfiguriert werden. indexes
-
Der Webserver erzeugt für Verzeichnisse, die keine eigene Index-Datei enthalten, eine Liste mit den im Verzeichnis enthaltenen Dateien. Ist die Option deaktiviert, wird ein Fehler 303 ausgegeben. Die Option kann mit einer .htaccess-Datei für jedes Verzeichnis konfiguriert werden.
htdocsfallback
-
Der Webserver leitet auf die Hauptdomain, wenn keine Sub-Domain angelegt ist. Ist die Option deaktivert, wird ein Fehler 404 ausgegeben: Seite nicht gefunden.
includes
-
Der Webserver erkennt
SSI
-Komandos und -Dateien. Die Option kann mit einer .htaccess-Datei für jedes Verzeichnis konfiguriert werden. letsencrypt
-
Es wird automatisch ein TLS Zertifikat für diese Domain und alle im Feld „validsubdomainnames" angegebenen Subdomains erzeugt
Apache-Scripting-Optionen:
cgi
-
Es können über das http Protokoll CGI Skripte ausgeführt werden.
fastcgi
-
Es können über das https Protokoll FastCGI Skripte ausgeführt werden. Das wird für die Ausführung von Anwendungen mit PHP benötigt.
passenger
-
Es können Anwendungen mit Hilfe von Passenger betrieben werden. Das kann zum Beispiel für die Ausführung von Anwendungen mit Python oder Ruby oder Node.js eingesetzt werden.
passengerfriendlyerrorpages
-
Dadurch wird der Debug Modus von Passenger aktiviert, der hilfreiche Meldungen bei Fehlern ausgibt. Für den Produktiveinsatz sollte diese Option wieder deaktiviert werden.
Folgende Pfade können gesetzt werden:
passenger_python
-
Hier kann entweder das vorinstallierte Python mit
/usr/bin/python3
konfiguriert werden, oder es kann ein selbst-installiertes Python mit einem beliebigen Pfad konfiguriert werden. passenger_nodejs
-
Hier kann entweder das vorinstallierte Node.js mit
/usr/bin/node
konfiguriert werden, oder es kann ein selbst-installiertes Node.js mit einem beliebigen Pfad konfiguriert werden. passenger_ruby
-
Hier kann entweder das vorinstallierte Ruby mit
/usr/bin/ruby
konfiguriert werden, oder es kann ein selbst-installiertes Ruby mit einem beliebigen Pfad konfiguriert werden. fcgi_php_bin
-
Hier kann entweder ein vorinstalliertes PHP mit
/usr/lib/cgi-bin/php
,/usr/lib/cgi-bin/php7.4
,/usr/lib/cgi-bin/php8.0
usw konfiguriert werden, oder es kann ein selbst-installiertes PHP mit einem beliebigen Pfad konfiguriert werden.
Beispiele
Mit dem folgenden Befehl schalten wir die Domain hs-example.de
auf und ordnen Sie dem Domain-Admin xyz00-hsexample
zu.
xyz00@hsadmin> domain.add({set:{name:'hs-example.de',user:'xyz00-hsexample'}})
Mit dem Befehl domain.search
werden alle Informationen zu einer Domain angezeigt.
Die gesuchte Domain wird mit dem Befehlsausdruck where
ausgewählt.
xyz00@hsadmin> domain.search({where:{name:'hs-example.de'}})
Und mit dem Befehl domain.remove
können wir eine Domain entfernen.
xyz00@hsadmin> domain.remove({where:{name:'hs-example.de'}})
Mit dem Befehl domain.update
lassen sich die Einstellungen für eine Domain verändern.
Bei einer Änderung der Domain-Optionen, wie im folgenden Beispiel, müssen immer alle Optionen angegeben werden, die gesetzt sein sollen, da der Befehl die bereits gesetzten Domain-Optionen komplett überschreibt.
xyz00@hsadmin> domain.update({where:{name:'hs-example.de'},set:{domainoptions:['htdocsfallback','indexes','greylisting','letsencrypt','autoconfig']}})