Beiträge: 9
Themen: 2
Registriert seit: 15.12.2012
Hallo,
habe mich hier registriert, da ich ein Problem mit meinem MyBB habe. Ich habe die geplante Aufgabe "Daily Backup" aktiviert, jedoch führt er diese nicht zu der entsprechenden Uhrzeit aus. Normalerweise gebe ich ihm Zeit dafür von 0-3 Uhr, aber heute hat er es z. B. wieder erst um 11:16 gemacht! Das nervt mich ziemlich, denn es kann ja nicht sein, dass der die Aufgabe ausführt, wenn der Lust dazu hat.
Hoffe auf eine entsprechende Hilfe. Besten Dank im Voraus!
Gruß,
Manuel
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Die Tasks werden nur ausgeführt, wenn jemand in deinem Forum aktiv ist. Deswegen wird ja auch bei der Aktivierung des Tasks empfohlen, stattdessen ein Cronjob zu verwenden.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 9
Themen: 2
Registriert seit: 15.12.2012
Ah, jetzt versteh ich das, das würde auch immer mit den Backups von der Zeit her passen, ok, dann danke für die Info, werde das jetzt mal ändern.
Danke nochmals!
Beiträge: 176
Themen: 22
Registriert seit: 24.03.2009
Ein kleiner Tipp diesbezüglich noch von mir:
Du kannst auch beides wunderbar kombinieren, bspw. einstellen, dass das Forum um 3 Uhr nachts ein Backup starten soll, und mittels Cronjob (z.B. über "wget") um 3.05 Uhr dann die index.php deines Forums aufrufen.
Wenn du über einen noch höheren Zugriff auf das System verfügst, kannst du ebenso mittels "php" - Befehl gezielt das Skript ausführen. Dann würde sich gegebenenfalls allerdings bereits ein shellskript anbieten, welches dir die Daten wegsichert.
Nur so als Denkanstoß.
Lg
Raphael
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
17.12.2012, 14:17
(Dieser Beitrag wurde zuletzt bearbeitet: 17.12.2012, 14:18 von frostschutz.)
wget eher auf die task.php
die index.php alleine macht kein run_task() und wget zieht sich im Gegensatz zu einem Browser nicht die task.php als Abhängigkeit. Das wget bleibt also wirkungslos.
Wenn der Cronjob auf dem gleichen Server läuft kann man auch php direkt auf die task.php loslassen (PHP als Kommandozeilenbefehl), könnte dann u.U. auch Timeout-technisch vorteilhaft sein (je nach Serverkonfiguration)
Beiträge: 176
Themen: 22
Registriert seit: 24.03.2009
Wget fungiert wie ein normaler http-get-Request meines Wissens nach. Demnach gibt sich in dem Moment "wget" gegenüber Apache als Client aus. Demnach parst dieser dann auch ganz normal die Datei durch, als würde ein normaler Nutzer von außen die index.php aufrufen (Es löst auch Abhängigkeiten auf, da diese ja nicht von wget, sondern vom Apache ausgeführt werden).
Aber direkt dabei die task.php anzusteuern ist wohl auch eine Idee, wobei ich spontan nicht weiß, ob ein Direktaufruf selbiger möglich ist.
Lg
Raphael
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
wget lädt keine Bilder (warum auch) und damit werden keine Tasks ausgeführt.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
(17.12.2012, 18:42)Raphael schrieb: Wget fungiert wie ein normaler http-get-Request meines Wissens nach.
Jo
Zitat:Demnach gibt sich in dem Moment "wget" gegenüber Apache als Client aus.
Jo
Zitat:Demnach parst dieser dann auch ganz normal die Datei durch, als würde ein normaler Nutzer von außen die index.php aufrufen
wget kann das zwar auch machen, aber ohne zusätzliche Optionen, speichert wget einfach nur die Datei ab ohne da irgendwas zu parsen.
Zitat:(Es löst auch Abhängigkeiten auf, da diese ja nicht von wget, sondern vom Apache ausgeführt werden).
Nee. Apache macht gar nichts als zwischen Client und PHP zu vermitteln, und PHP führt nur die index.php aus, aber da sind keine Tasks drin.
Zitat:Aber direkt dabei die task.php anzusteuern ist wohl auch eine Idee, wobei ich spontan nicht weiß, ob ein Direktaufruf selbiger möglich ist.
Jo, geht so
Die index.php baut nur ein <img src="task.php"> ein. Ein Browser versucht dann dieses Bild zu laden und führt damit die task.php und damit den Task im Hintergrund aus.
wget macht das aber (ohne Zusatzoptionen) nicht. Und mit Zusatzoptionen würde wget erstmal versuchen, alle Bilder auf der Seite zu laden statt nur die task.php.
Daher direkt die task.php ansteuern - das dafür ggf. auch gerne mehrmals da jedes Mal glaube ich nur ein Task ausgeführt wird und ja mehrere fällig sein könnten
Beiträge: 9
Themen: 2
Registriert seit: 15.12.2012
Hey danke für eure Hilfe, aber leider habe ich gar keine Ahnung wie ich nen Cronjob ausführe und ich schätze mal, dass das schlecht ist, oder?
Beiträge: 176
Themen: 22
Registriert seit: 24.03.2009
Ahhh *click*
Ich wusste nicht, dass die task.php in der index.php quasi als Bild aufgerufen wird. Dann ist es natürlich verständlich, dass wget die tasks nicht ausführt.
Wieder etwas dazu gelernt.
@Manuel97: Hast du einen normalen Webspace, vServer oder Root-Server? Einige Webspace Anbieter bieten auch Cronjobs in ihren Leistungen an. Da hast du dann meistens in einem Verwaltungspanel für deinen Webspace eine entsprechende Option. Bei den anderen beiden Varianten kannst du das z.B. via crontab selbst einrichten.
Lg
Raphael