Keine Cron-Jobs für Drupal verfügbar? Poormanscron hilft!

Keine Cron-Jobs für Drupal verfügbar? Poormanscron hilft!

Drupal muss in regelmäßigen Abständen bestimmte Arbeiten für die Systempflege erledigen. Dazu gehören zum Beispiel das Erfassen neuer Inhalte im Suchindex, der Versand von E-Mails oder das Prüfen auf neue Updates für Drupal und seine Module. Am besten erledigt man dies natürlich durch einen Cron-Job.Dazu trägt man in der Crontab seines Servers einen Eintrag ähnlich diesem ein:

45 * * * * /usr/bin/lynx -source http://example.com/cron.php

Damit ruft der Cron-Dämon den - auf fast jedem Linux installierten - Textbrowser Lynx auf, der seinerseits die gewünschte Drupalseite aufruft und dort die Datei cron.php ausführt. Diese arbeitet dann alle anstehenden Arbeiten. Aber was tun, wenn man keine Möglichkeit hat für seine Website einen Cron-Job einzurichten? 

Vor allem Billig-Hostingpakete sehen das oft nicht vor. Entweder nutzt man dann einen externen Dienst für diese Zwecke, oder man installiert das Modul Poormanscron. Sobald es eingerichtet ist, prüft es bei jedem Seitenaufruf, ob die (einstellbare) Zeit abgelaufen ist und ein neuer Lauf von cron.php erforderlich ist. Wenn dies der Fall ist, ruft es zunächst die Cron.php auf und gibt dann erst die ursprünglich angeforderte Seite aus. Der Nachteil dieser Methode: derjenige, der gerade die Seite aufgerufen hat, die zuerst cron.php abarbeitet, muss unter Umständen deutlich länger auf seine angeforderte Seite warten, als wenn keine Cron.php aufgerufen würde. Dagegen vermeidet der Aufruf von cron.php durch einen Cron-Job solche Verzögerungen. Ein weiterer Vorteil eines richtigen Cron-Jobs: Der Aufruf kann zu bestimmten Zeiten erfolgen - zum Beispiel Nachts, wenn wenig los ist auf der Website.