Archiv verlassen und diese Seite im Standarddesign anzeigen : Cronjob durchläuft Script nicht vollständig
mpower
09.03.2006, 16:47:31
Hallo,
auch ich bin seit kurzem Nutzer des kostenlosen Cronjob-Services von SelfPHP, danke, dass ihr sowas zur Verfügung stellt ;-)
Allerdings habe ich ein kleines Problem: Das Script, dass per Cronjob angestoßen wird, enthält abstrahiert formuliert 5 Schritte:
1) Alte Datei vom Server löschen (Datei ist definitiv vorhanden)
2) Neue Datei erstellen
3) Datei öffnen
4) in die Datei schreiben
5) Datei schließen und im Zielverzeichnis ablegen
Der Cronjob scheint allerdings nur den ersten Schritt abzuarbeiten. Die Datei wird also gelöscht, danach scheint die Verarbeitung gestoppt zu werden, so dass die Datei weg ist.
Mache ich irgendwas falsch?
Damir
09.03.2006, 19:00:40
Ich denke schon;-))
Der CronJob pingt ja nur deine Datei an, der Rest wird dann von deiner Datei gemacht....
Rufe doch mal die Datei direkt auf - also die URL..... So kannst du selber ausprobieren wo es eventuell haengt....
Bye Damir
mpower
09.03.2006, 19:29:27
Ich denke, ich hätte die Frage nicht so gestellt, wenn nicht klar wäre, dass das Script beim manuellen Aufruf im Browser fehlerfrei durchläuft, das tut es nämlich :-)
meikel
10.03.2006, 04:05:00
Mache ich irgendwas falsch?
Ja.
1. Error Logfile angucken
2. da cronjob wahrscheinlich mit "wget URL > /dev/null" arbeitet:
wget möchte neben dem HTTP-Header ein ganz klein wenig Content bekommen. Das würde schon genügen:
<?php
echo ' ';
# dickes Script
echo ' ';
?>
Wenn nix kommt, könnte sich wget veralbert fühlen...
Damir
11.03.2006, 10:08:29
Ja.
Wenn nix kommt, könnte sich wget veralbert fühlen...
Der CronJob wird von SELFPHP gestartet (ist der kostenlose CronJob).
Ok, zurueck zum Thema....
Uebergibst du auch Variablen bei der URL????? Oder wie sieht der Aufruf aus....
Damir
mpower
11.03.2006, 12:12:07
Nein, Variablen übergebe ich nicht, was für das Script auch nicht nötig ist.
Damir
11.03.2006, 19:01:26
Tja, jetzt muss die Glaskugel herhalten......
Also ich weiss momentan kein Rat - Am CronJob kann es nicht liegen, da er ja dein Skript anpingt, also seine Arbeit erledigt hat.... Viel Zeit lassen wir beim Anstossen auch - also ein TimeOut vorher passt auch nicht....
Ich muesste Dein Skript sehen und es testen;-))
Kann aber eigentlich nichts gravierendes sein...
Bye Damir
meikel
12.03.2006, 09:27:07
Der CronJob wird von SELFPHP gestartet (ist der kostenlose CronJob).
Erledigt Ihr das etwa nicht mit
<zeit> /usr/bin/wget <optionen> http://URL > /dev/null
im crontab Eintrag?
Damir
12.03.2006, 10:12:06
Hi,
es sind mittlereile zig tausend Cronjobs..... Sie werden alle ueber CURL angestossen und bisher erfolgreich. Alternativ koennte exec("wget URL") herhalten. Aber macht das ein Unterschied????
Damir
meikel
14.03.2006, 07:11:53
Sie werden alle ueber CURL angestossen und bisher erfolgreich.
Alternativ koennte exec("wget URL") herhalten.
So meinte ich das nicht. Ich dachte da eher an einen stinknormalen crontab Eintrag. Natürlich wird die Liste bei 10000 Einträgen etwas länger, aber ein Textfile mit 10000 Zeilen zu generieren und anschließend /etc/cron restart auszuführen, sollte kein Thema sein.
Vorteil: der Kram "verschwindet in der Shell"...
|Coding
14.03.2006, 16:34:42
Die gesamte Verwaltung wird aber dann doch etwas aufwendiger.
mpower
15.03.2006, 15:36:55
Ohne Werbung machen zu wollen: Ich habe mich bei einem alternativen Anbieter von kostenlosen Cronjobs angemeldet, dort wird mein Script von Anfang bis Ende problemlos durchlaufen. Keine Ahnung, wo da der Hase im Pfeffer liegt, aber solange es jetzt funktioniert, soll es mir egal sein :-)
Trotzdem danke für die Hilfe!
Damir
15.03.2006, 16:45:32
Hi,
ja dann viel Spass bei dem anderen Anbieter.
Bye Damir
vBulletin® v3.8.3, Copyright ©2000-2012, Jelsoft Enterprises Ltd.