So legst du eine geplante Aufgabe bei HostPress an und lässt diese zum gewünschten Zeitpunkt ausführen.
In diesem Artikel erklären wir, wie ein Cronjob bei HostPress eingerichtet werden kann, was ein Cronjob ist und welche Aufgaben er zum Beispiel durchführen kann.
Was ist ein Cronjob?
Ein Cronjob ist eine ganz bestimmte Aufgabe, welche regelmäßig zu einem festgelegten Zeitpunkt ausgeführt wird.
Wie richte ich einen Cronjob ein?
Um einen Cronjob einzurichten, ist es zunächst nötig, sich über das Kundencenter in Plesk und der jeweiligen Webseite einzuloggen.

Dort angekommen, kann rechts über den Menüpunkt „Geplante Aufgaben“ ein neuer Cronjob angelegt werden.

Welche Optionen zur Auswahl stehen
Du kannst hier nun einen bestimmten Linux-Systembefehl ausführen lassen, eine bestimmte URL aufrufen oder ein PHP-Script ausführen lassen.
Zudem kann eine Beschreibung zur eindeutigen Identifizierung des Cronjobs hinzugefügt werden und der gewünschte Aufgabenintervall ausgewählt werden. Außerdem können E-Mail-Benachrichtigungen gesendet werden, wenn der Auftrag ausgeführt wurde oder aber auch wenn etwas nicht funktioniert hat.
Zuletzt genügt ein Klick auf „OK“, um den Cronjob anzulegen.
Ein Beispiel für einen Cronjob
Obwohl dies inzwischen mit einem Klick über das WordPress-Toolkit funktioniert, nehmen wir als Beispiel die WordPress-Funktion wp-cron.php.
Bei der Datei wp-cron.php handelt es sich um eine .php-Datei, welche vom WordPress automatisch bei jedem Besuch der Webseite ausgeführt wird. Bei hohen Besucherzahlen kann dies zu einem Performance-Killer werden. Ebenfalls kann es bei sehr wenigen Zugriffszahlen dazu kommen, dass der Cronjob durch die fehlenden Seitenaufrufe gar nicht ausgeführt wird. Deshalb ist es sinnvoll, diese Funktion auf ein festes Intervall umzuschalten.
WordPress Funktion wp-cron.php deaktivieren
Zunächst sollte die WordPress Funktion deaktiviert werden. Hierfür ist es nötig, der Datei wp-config.php folgenden Code hinzuzufügen.
define('DISABLE_WP_CRON', true);
wp-cron.php als Cronjob einrichten

Da es sich um bei wp-cron.php um eine PHP-Datei handelt, wählen wir zunächst „PHP-Skript ausführen“ aus. Durch einen Klick auf das Ordnersymbol können wir nun zur gewünschten Datei navigieren. Die Datei sollte unter /httpdocs/wp-cron.php zu finden sein.
Als Nächstes bestimmen wir die PHP-Version. Hier sollte die aktuellste ausgewählt werden, da der Cronjob mit dieser am schnellsten ausgeführt wird.
Als Letztes wählen wir das Intervall. Der Aufruf der wp-cron.php sollte alle 10 bis 30 Minuten ausgeführt werden. Das Zeitformat „minütlich“ gibt es aktuell nicht als Auswahl. Um dies jedoch trotzdem zu verwenden, wählen wir Unix Format und tragen „17,47 * * * *“ (ohne Anführungszeichen) als Wert ein. Hierbei wird der Cron alle 30 Minuten ausgeführt (einmal in der 17. Minute und nochmals in Minute 47).
Aufbau des UNIX-Crontab-Formats:
┌───────────── Minute (0 - 59) │ ┌───────────── Stunde (0 - 23) │ │ ┌───────────── Tag des Monats (1 - 31) │ │ │ ┌───────────── Monat (1 - 12) │ │ │ │ ┌───────────── Wochentag (0 - 6) │ │ │ │ │ * * * * *
Mit dem Unix-Crontab-Formats kann man das Intervall sehr individuell festlegen.
Anschließend genügt ein Klick auf OK, um den Cronjob zu aktivieren.
Cronjob nutzt eine andere PHP-Version als in Plesk eingestellt?
Wählst du in der geplanten Aufgabe „PHP-Skript ausführen“, legst du die PHP-Version direkt im Cronjob fest. Anders ist es, wenn du „Befehl ausführen“ nutzt oder ein eigenes Shell-Skript aufrufst, das PHP mit php oder /usr/bin/php startet (zum Beispiel für WP-CLI). Dann läuft das Skript mit dem PHP des Betriebssystems. Diese Version kann älter sein als die PHP-Version, die du in Plesk für deine Website eingestellt hast.
Ein typisches Anzeichen: Die Website läuft im Browser fehlerfrei, im debug.log tauchen aber regelmäßig im Takt deines Cronjobs Fehler auf, etwa eine Composer-Meldung wie Your Composer dependencies require a PHP version ">= 8.3.0". You are running 8.1.x.
- Prüfe in Plesk unter „Geplante Aufgaben“ und in deinen eigenen Skripten, wie PHP aufgerufen wird.
- Ersetze
phpbzw./usr/bin/phpdurch den vollständigen Pfad zum PHP-Interpreter von Plesk, zum Beispiel/opt/plesk/php/8.3/bin/php. Passe die Versionsnummer im Pfad an die PHP-Version deiner Website an. - Warte den nächsten Lauf des Cronjobs ab und prüfe, ob im
debug.logkeine neuen Fehler mehr auftauchen.
Änderst du später die PHP-Version deiner Website, passe auch den Pfad in deinen Cronjobs und Skripten an.
Cronjob läuft trotz richtiger Einstellung mit einer älteren PHP-Version?
Prüfe, ob dieselbe Aufgabe mehrfach angelegt ist. Liegt unter „Geplante Aufgaben“ zum Beispiel ein zweiter Eintrag für wp-cron.php mit einer älteren PHP-Version, läuft dieser weiter, auch wenn du den anderen Eintrag korrekt eingestellt hast.
- Öffne in Plesk unter „Websites & Domains“ den Menüpunkt „Geplante Aufgaben“ und sieh dir die komplette Liste an.
- Suche nach Einträgen, die dasselbe Skript aufrufen, zum Beispiel
/httpdocs/wp-cron.php. - Öffne jeden dieser Einträge und stelle bei „PHP-Skript ausführen“ die PHP-Version deiner Website ein. Speichere mit „OK“.