Bestimmte Aktionen in Plesk wie:
werden in Plesk als Ereignisse definiert. Für jedes Ereignis können Sie einen oder mehrere Ereignis-Handler erstellen, über die bei jedem Ereignis ein vorkonfigurierter Befehl ausgeführt wird.
Event-Handler sind hilfreich, wenn Sie eine bestimmte Aktion oder eine Reihe von Aktionen ausführen möchten, sobald ein gewisses Ereignis stattfindet. Sie können zum Beispiel einen Ereignis-Handler erstellen, der ausgelöst wird, wenn ein Abonnement erstellt wird. Als Aktionen können Sie festlegen, dass ein Postfach erstellt werden oder eine Anfrage an einen externen Dienst gesendet werden soll usw.
Hinweis (Plesk für Linux): Die Ereignis-Handler, die auf dem Server ausgeführt werden, können statt vom Root-Benutzer auch vom Serveradministrator erstellt werden. Wenn Sie die Nutzung des Root-Kontos einschränken möchten, erstellen Sie eine leere Datei mit dem Namen root.event_handler.lock
unter /usr/local/psa/var/
.
/usr/local/psa/bin/script.sh
oder C:\Windows\Temp\script.bat
.Wenn ein Ereignis-Handler ausgelöst wird, werden bestimmte mit dem Ereignis verknüpfte Daten ("Ereignisparameter") gesendet. Welche Daten übertragen werden, hängt vom Ereignis-Handler ab. Beim Ereignis "Domain erstellt" werden die folgenden Parameter vom Ereignis-Handler übertragen:
Jeder Parameter wird als Umgebungsvariable übertragen, die Sie wie hier beschrieben im Shellskript oder in der BAT-Datei verwenden können:
Verwenden Sie den Platzhalter ${ENVIRONMENT_VARIABLE_NAME}
(z. B. ${NEW_DOMAIN_NAME}
) im Shellskript. Wenn der Ereignis-Handler ausgelöst wird, wird der Platzhalter durch den Wert ersetzt, der dem Ereignis entspricht.
Verwenden Sie den Platzhalter %N
(z. B %1
) in Ihrer BAT-Datei und hängen Sie den Namen der gewünschten Umgebungsvariable in der entsprechenden Position am Ende des Befehls in den Einstellungen des Ereignis-Handlers an. Zum Beispiel:
Der Platzhalter %1
wird hier durch den Wert der Umgebungsvariable NEW_DOMAIN_NAME
ersetzt. %2
wird durch den Wert von NEW_DOMAIN_GUID
ersetzt. Wenn Sie %3
in der BAT-Datei verwenden, wird der Platzhalter nicht ersetzt, da nur zwei Umgebungsvariablen nach dem Befehl angegeben wurden.
Hier finden Sie eine vollständige Liste der Ereignisparameter und entsprechenden Namen der Umgebungsvariablen für jeden Ereignis-Handler.
Zur Referenz finden Sie hier zwei Skriptbeispiele für das Ereignis "Kundenkonto erstellt":
test-handler.sh
#!/bin/bash
echo "--------------" >> /tmp/event_handler.log
/bin/date >> /tmp/event_handler.log # Datum und Uhrzeit des Ereignisses
/usr/bin/id >> /tmp/event_handler.log # Benutzer, für den das Skript ausgeführt wurde (zu Kontrollzwecken)
echo "customer created" >> /tmp/event_handler.log # Informationen zum erstellten Kundenkonto
echo "name: ${NEW_CONTACT_NAME}" >> /tmp/event_handler.log # Kundenname
echo "login: ${NEW_LOGIN_NAME}" >> /tmp/event_handler.log # Benutzername des Kunden in Plesk
echo "--------------" >> /tmp/event_handler.log
test-handler.bat
echo "--------------" >> c:\windows\temp\event_handler.log
rem Informationen zu Datum und Uhrzeit des Ereignisses
date /T >> c:\windows\temp\event_handler.log
rem Informationen zum erstellten Kundenkonto
echo "customer created" >> c:\windows\temp\event_handler.log
rem Name des Kunden
echo "name: %1" >> c:\windows\temp\event_handler.log
rem Benutzername des Kunden in Plesk
echo "login: %2" >> c:\windows\temp\event_handler.log
echo "--------------" >> c:\windows\temp\event_handler.log
Wenn Sie sich in Plesk anmelden und ein Kundenkonto mit dem Namen "Max Muster" und dem Anmeldenamen "max_muster" erstellen, wird der Ereignis-Handler ausgelöst und die folgenden Einträge werden zur Datei "event_handler.log" hinzugefügt:
Fri Mar 16 15:57:25 NOVT 2007
uid=0(root) gid=0(root) groups=0(root)
customer created
name: Max Muster
login: max_muster
Mon März 15 21:46:34 NOVT 2010
customer created
name: Max Muster
login: max_muster
Um eine Liste der aktiven Ereignis-Handler aufzurufen, gehen Sie zu Tools & Einstellungen > Ereignis-Manager. Hier können Sie Ereignis-Handler auch bearbeiten und entfernen:
If you have questions or need support, please visit the Plesk forum or contact your hosting provider.
The comments below are for feedback on the documentation only. No timely answers or help will be provided.