Cronjobs sind zeitgesteuerte Aufgaben — z.B. jeden Tag um 3 Uhr ein Backup, jede Stunde eine URL aufrufen, jede Woche eine Datenbank optimieren.
Cronjob im Portal anlegen
- Meine Dienste → Ihre Webhosting-Instanz
- Reiter Cronjobs
- Neuer Cronjob
- Zeitplan definieren
- Befehl oder URL angeben
Zeitplan-Syntax (Cron-Format)
* * * * * Befehl
│ │ │ │ │
│ │ │ │ └── Wochentag (0-6, 0=Sonntag)
│ │ │ └──── Monat (1-12)
│ │ └────── Tag (1-31)
│ └──────── Stunde (0-23)
└────────── Minute (0-59)Beispiele:
0 3 * * *— Täglich um 3:00 Uhr*/15 * * * *— Alle 15 Minuten0 */6 * * *— Alle 6 Stunden0 3 * * 0— Jeden Sonntag um 3:00 Uhr0 3 1 * *— Am 1. jedes Monats um 3:00 Uhr
Cronjob-Typen im Portal
A) URL aufrufen — Praktisch für WordPress-Cron, Newsletter-Trigger, Webhook-Aktivierung:
Typ: URL aufrufen
URL: https://Ihre-domain.de/wp-cron.phpB) PHP-Skript — Eigene PHP-Datei ausführen:
Typ: PHP-Skript
Pfad: /www/scripts/tagesbericht.phpC) Shell-Befehl — Volle Kontrolle (nur bei bestimmten Tarifen):
Typ: Shell-Befehl
Cmd: mysqldump -u user -ppass db > /backup/$(date +%F).sqlAusgabe erhalten
Standardmäßig verwerfen wir stdout und stderr. Wenn Sie die Ausgabe per E-Mail bekommen wollen:
- Im Portal E-Mail bei Ausführung aktivieren
- Nur bei Fehler — sinnvoll wenn der Job normal keine Ausgabe hat
WordPress-Cron
WordPress nutzen intern einen "Pseudo-Cron" der bei jedem Website-Aufruf läuft — problematisch bei wenig Traffic. Besser:
- In
wp-config.php:define('DISABLE_WP_CRON', true); - WTS-Cronjob alle 15 Min:
https://Ihre-domain.de/wp-cron.php?doing_wp_cron
Dann läuft WP-Cron zuverlässig unabhängig von Besuchern.
Limits
- Min. Intervall: 5 Minuten (kürzer geht nicht)
- Max. Laufzeit: 60 Minuten pro Job
- Max. Anzahl: je nach Tarif 10-50 Jobs