Ein Cronjob führt automatisch Aufgaben zu festgelegten Zeiten aus. In diesem Handbuch erklären wir, wie Sie Cronjobs in DirectAdmin einrichten. Dies kann Ihnen helfen, Zeit zu sparen und sicherzustellen, dass wichtige Aufgaben regelmäßig ausgeführt werden, ohne dass Sie manuell darauf achten müssen.

Was ist ein Cronjob?

Ein Cronjob (oder Cron-Aufgabe) ist eine geplante Aufgabe, die automatisch zu bestimmten Zeiten ausgeführt wird. Dies kann von täglichen Datenbanksicherungen bis hin zur Erstellung wöchentlicher Berichte variieren. Hier sind einige Beispiele für gängige Cronjobs:

  • Tägliche Datenbanksicherung
  • Stündlich Cache leeren
  • Wöchentlichen Bericht generieren
  • Skripte periodisch ausführen

Cronjobs sind besonders nützlich für Webentwickler und Systemadministratoren, da sie repetitive Aufgaben automatisieren und so die Wahrscheinlichkeit menschlicher Fehler verringern.

Cronjob erstellen

Schritt 1: Navigieren Sie zu Cron Jobs

  1. Melden Sie sich bei DirectAdmin an
  2. Gehen Sie im Menü zu Cron Jobs
  3. Sie sehen eine Übersicht der vorhandenen Cronjobs

Schritt 2: Neuen Cronjob hinzufügen

  1. Klicken Sie auf Add Cron Job oder Cronjob hinzufügen
  2. Geben Sie die Zeit ein (siehe unten)
  3. Geben Sie den Befehl ein
  4. Klicken Sie auf Add oder Hinzufügen

Timing konfigurieren

Ein Cronjob verwendet 5 Zeitfelder:

Feld Bereich Bedeutung
Minute 0-59 In welcher Minute
Stunde 0-23 In welcher Stunde
Tag 1-31 An welchem Tag des Monats
Monat 1-12 In welchem Monat
Wochentag 0-7 An welchem Tag (0=Sonntag)

Häufig verwendete Zeitpläne

Hier sind einige häufig verwendete Zeitpläne für Cronjobs:

  • Jede Minute:
    * * * * *
  • Jede Stunde:
    0* * * *
  • Jeden Tag um 3:00:
    0 3* * *
  • Jeden Montag um 9:00:
    0 9 * * 1
  • Erster Tag des Monats:
    0 0 1 * *

Beispiele für Befehle

Hier sind einige Beispiele für Befehle, die Sie in Ihren Cronjobs verwenden können:

WordPress-Cron ausführen

/usr/local/bin/php /home/user/domains/site.nl/public_html/wp-cron.php

PHP-Skript ausführen

/usr/local/bin/php /home/user/domains/site.nl/public_html/scripts/backup.php

Datenbanksicherung

/usr/bin/mysqldump -u user -p'wachtwoord' database > /home/user/backups/db-$(date +\%Y\%m\%d).sql

URL abrufen (Webhook)

/usr/bin/wget -q -O /dev/null https://site.nl/cron-endpoint

Cache leeren

rm -rf /home/user/domains/site.nl/public_html/cache/*

Cronjob verwalten

Bearbeiten

  1. Gehen Sie zu Cron Jobs
  2. Klicken Sie auf den Cronjob
  3. Ändern Sie die Zeit oder den Befehl
  4. Klicken Sie auf Save

Deaktivieren

  1. Fügen Sie # am Anfang des Befehls hinzu
  2. Der Cronjob wird übersprungen, aber nicht gelöscht

Entfernen

  1. Gehen Sie zu Cron Jobs
  2. Wählen Sie den Cronjob aus
  3. Klicken Sie auf Delete

Ausgabe und Protokollierung

Ausgabe in Datei

0 3* * * /usr/local/bin/php /path/to/script.php >> /home/user/logs/cron.log 2>&1

Ausgabe ignorieren

0 3 * * * /usr/local/bin/php /path/to/script.php > /dev/null 2>&1

Ausgabe per E-Mail

DirectAdmin kann die Cronjob-Ausgabe per E-Mail senden. Stellen Sie dies über die Einstellungen von Cron Jobs ein. Dies kann nützlich sein, um über Fehler oder Probleme informiert zu bleiben, die bei der Ausführung des Cronjobs auftreten.

WordPress und Cronjobs

WordPress verwendet wp-cron.php für geplante Aufgaben. Für bessere Leistung:

  1. Deaktivieren Sie WP-Cron in wp-config.php:
  2. define('DISABLE_WP_CRON', true);
  3. Fügen Sie einen echten Cronjob hinzu:
  4. */15 * * * * /usr/local/bin/php /home/user/domains/site.nl/public_html/wp-cron.php

Häufige Probleme

Cronjob funktioniert nicht

Wenn Ihr Cronjob nicht funktioniert, sind hier einige Schritte, die Sie zur Fehlersuche unternehmen können:

  1. Überprüfen Sie den Pfad: Stellen Sie sicher, dass Sie vollständige Pfade in Ihren Befehlen verwenden.
  2. Überprüfen Sie Berechtigungen: Stellen Sie sicher, dass das Skript ausführbar ist.
  3. Überprüfen Sie die Ausgabe: Leiten Sie die Ausgabe in eine Protokolldatei um, um Fehlermeldungen zu überprüfen.
  4. Testen Sie manuell: Führen Sie den Befehl über SSH aus, um zu sehen, ob er funktioniert.

Falsche PHP-Version

Wenn Sie eine bestimmte PHP-Version benötigen, geben Sie diese in Ihrem Cronjob an:

/usr/local/bin/ea-php81 /path/to/script.php

Befehl nicht gefunden

Verwenden Sie immer vollständige Pfade (z. B. /usr/bin/wget anstelle von wget). Dies verhindert "Befehl nicht gefunden"-Fehler.

Tipps

  1. Testen Sie zuerst manuell: Führen Sie den Befehl über SSH aus, bevor Sie den Cronjob erstellen, um sicherzustellen, dass er funktioniert.
  2. Verwenden Sie Protokollierung: Leiten Sie die Ausgabe in eine Protokolldatei um, um Probleme einfach diagnostizieren zu können.
  3. Nicht zu häufig: Vermeiden Sie Cronjobs jede Minute, es sei denn, es ist absolut notwendig. Dies kann Serverressourcen unnötig belasten.
  4. Backup-Skripte testen: Überprüfen Sie regelmäßig, ob Ihre Backups tatsächlich funktionieren und dass Sie sie wiederherstellen können.
  5. Verwenden Sie vollständige Pfade: Dies verhindert häufige Fehler und macht Ihre Cronjobs zuverlässiger.

Cron-Syntax-Tipps

Die Cron-Syntax kann verwirrend sein. Hier sind einige nützliche Hilfsmittel:

Crontab Guru

Verwenden Sie crontab.guru, um Ihre Cron-Zeitplanung zu überprüfen. Geben Sie Ihre Zeit ein und Sie sehen sofort, wann der Job läuft.

Sonderzeichen

  • * = jeder Wert
  • , = Liste von Werten (z. B. 1,3,5)
  • - = Bereich (z. B. 1-5)
  • / = Schrittwerte (z. B. */15 = alle 15)

Verwandte Artikel

Brauchen Sie Hilfe?

Wir sind für Sie da! Haben Sie Fragen oder stoßen Sie auf Probleme? Unser Support-Team hilft Ihnen gerne persönlich weiter. Senden Sie uns eine Nachricht über das Ticketsystem - wir antworten normalerweise innerhalb weniger Stunden und denken gerne mit Ihnen mit.