Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision |
de:server:crontask [10.02.2015 21:05] – [Windows] Ergänzt II admin | de:server:crontask [23.09.2021 14:56] – [Linux] admin |
---|
SoSci Survey erlaubt einige zeitgesteuerte Funktionen, z.B. die Übertragung von Interviews in die Datenbank bei niedriger Serverlast ([[caching|Schreibcache für Interviews]]), den zeitgesteuerten Versand von Serienmails oder (noch in Entwickung) eine regelmäßige Benachrichtigungen über die Anzahl der Befragungsteilnehmer. | SoSci Survey erlaubt einige zeitgesteuerte Funktionen, z.B. die Übertragung von Interviews in die Datenbank bei niedriger Serverlast ([[caching|Schreibcache für Interviews]]), den zeitgesteuerten Versand von Serienmails oder (noch in Entwickung) eine regelmäßige Benachrichtigungen über die Anzahl der Befragungsteilnehmer. |
| |
Für die korrekte Ausführung der zeitgesteuerten Funktionen muss das Skript ''admin/crontask.php'' regelmäßig ausgeführt werden. Empfohlen wird ein Aufruf alle 5 Minuten -- rufen Sie das Skript seltener auf, kann der Zeitpunkt wann eine Aufgabe abgearbeitet wird stärker vom geplanten Zeitpunkt abweichen. | Für die korrekte Ausführung der zeitgesteuerten Funktionen muss das Skript ''admin/crontask.php'' regelmäßig ausgeführt werden. Empfohlen wird ein Aufruf alle 1-5 Minuten -- rufen Sie das Skript seltener auf, kann der Zeitpunkt wann eine Aufgabe abgearbeitet wird, stärker vom geplanten Zeitpunkt abweichen. |
| |
| Den absoluten Pfad zum PHP-Skript, welches Sie für die Einrichtung der zeitgesteuerten Ausführung benötigen, finden Sie unter **Server-Einstellungen** -> **Konfiguration** -> Karteireiter //Server// -> //Skript für Crontask//. |
| |
**Wichtig:** Die [[de:server:maintenance|regelmäßige Wartung des Servers]] mittels ''admin/cronjob.php'' muss unabhängig von der Übertragung des Cache durchgeführt werden. Hier ist ein Intervall von 24 Stunden angemessen. | **Wichtig:** Die [[de:server:maintenance|regelmäßige Wartung des Servers]] mittels ''admin/cronjob.php'' muss unabhängig von der Übertragung des Cache durchgeführt werden. Hier ist ein Intervall von 24 Stunden angemessen. |
===== Linux ===== | ===== Linux ===== |
| |
Um das Skript auf einem Linux-System alle 5 Minuten auszuführen, tragen Sie via ''crontab -e'' folgenden Cronjob ein. Das Passwort legen Sie in SoSci Survey in der **Server-Verwaltung** unter **Server-Einstellungen** fest. | Um das Skript auf einem Linux-System alle 5 Minuten auszuführen, tragen Sie folgenden Cronjob ein. Das Passwort legen Sie in SoSci Survey in der **Server-Verwaltung** unter **Server-Einstellungen** fest. |
| |
| Der `crontab` sendet die Ausgabe des Scripts standardmäßig per E-Mail. Um das zu vermeiden, legen Sie ein kleines Bash-Script an, welches sich um den Aufruf kümmert: |
| |
| <file bash /var/www/script/crontask.sh> |
| #!/bin/bash |
| cd /var/www/sosci/html/admin/ |
| /usr/bin/php /var/www/sosci/html/admin/crontask.php password=SECRET |
| </file> |
| |
| Dieses Script muss das "excetuable flag" bekommen, z.B. mittels ''chmod u+x crontask.sh''. Der Pfad von ''php'' kann variieren, z.B. ''/usr/lib/cgi-bin/php''. Testen Sie den Aufruf des Scripts in der Konsole. Anschließend können Sie einen Cronjob anlegen, welcher die Ausgabe verwirft: |
| |
| <code> |
| # m h dom mon dow command |
| */1 * * * * /var/www/script/crontask.sh >/dev/null 2>& |
| </code> |
| |
<code>*/5 * * * * /usr/lib/cgi-bin/php /var/www/html/sosci/admin/crontask.php password=SECRET</code> | Um den Cronjob anzulegen, verwenden Sie ''crontab''. Legen Sie den Cronjob für den Linux-Nutzer an (im folgenden Beispiel ''www-data''), mit dessen Rechten auch der Webserver läuft. So vermeiden Sie Probleme mit Zugriffsrechten. |
| |
| <code bash> |
| sudo crontab -e -u www-data |
| </code> |
| |
===== Windows ===== | ===== Windows ===== |