Zeiteisen : Durchführung PHP gesteuerte Funktionen ohne http-Request

Beitrag lesen

Bei ganz schlimmen Billighostern muss man darauf zurückgreifen, dass zufällig ein PHP-Skript aufgerufen wird, welches mal nachschaut, ob ein Job offen ist und den erledigen.

Bei besseren Hostern kann man mittels crontab einen Job anlegen. Zuständig sind dann Dienste wie cron oder anacron. Entsprechend werden die Jobs dann von php-cli ausgeführt (AVE: Inzwischen hat das oft eine eigene php.ini, also andere Einstellungen)

Die crontab wird in einer ssh-Sitzung editiert, also konfiguriert:

[sudo] crontab -e [-u alice]

(Die Angabe des Benutzers nach sudo ist optional!)

Darin würde dann

50 23 * * 0 /usr/bin/php /foo/bar/cron.php

dafür sorgen, dass jeden Sonntag um 23:50 /foo/bar/cron.php gestartet wird. Alle Ausgaben bekommt (wenn nicht anders eingstellt) der locale user, dem die crontab gehört über das lokale Mailsystem.

50 23 * * 0 /usr/bin/php /foo/bar/cron.php 1> /dev/null 2>> /foo/bar/cron.errors 

würde alle Ausgaben unterdrücken und die Fehler nach /foo/bar/cron.errors loggen. Es würde dann KEIN Mail verschickt.