Antworten auf deine Fragen:
Neues Thema erstellen

PHP Skript läuft bei wget-Aufruf nicht durch

lachender_engel

Aktives Mitglied

Hallo, Zusammen.

Ein kurioses Verhalten lässt mich seit mehreren Tagen verzeifeln. Eventuell hatt hier jemand dieses schon mal und kann mich auf den richtigen Pfad brigen?! ;-)

Es geht um den Aufruf eines PHP Skriptes. Ich habe es programmiert und es läuft beim Aufruf über den Brwoser fehlerfrei und bis zum Ende.
Die Aufgabe des Skriptes ist es Daten zu importieren, und zwar in einer Schleife, für verschiedene Projekte.
Unabhängig der tatsächlich existierenden Anzahl von Porjekten (und Import-Schleifen) beendet sich das Skript nach derm 60ten Projekt, sofern es mit wget aufgerufen wurde.
Setzte ich ein Projekt inaktiv, wird das 61te Projekt importiert, u.s.w.

Da der Import grundsätzlich läuft schließe ich die Ursache in der Schleife aus.
Den Timeout habe ich im Skript schon auf 0 gesetzt und das memory_limit in der php.ini auf 4GB hochgesetzt.
Wie geschrieben, es läuft beim Aufruf des Browsers komplett durch, beim Aufruf mit wget unter Linux bricht es ab. Ach ja, ich habe auch schon den Aufruf von veschiedenen Linux Rechnern starten lassen - immer mit dem selben Phänomen.

Da das Skript sehr komplex ist, kann ich es hier nicht posten.
Ich habe beim großen g auch schon mehrfach diese Problemstellung in Foren gelesen, doch nie mit einer konkreten Lösung.
Mir geht es um die Frage, ob jemand dieses Phänomen kennt und ggf. eine Lösung dafür hat bzw. aus Erfahrung weiß, woran so etwas liegen kann.

Danke und schöne Grüße!
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP Skript läuft bei wget-Aufruf nicht durch

Debuggen.

Wie lange dauert das Importieren eines einzelnen Projektes? Wirf diese Dauer in eine Schleife in ein Testscript und versuch dieses mit wget zu holen. Falls das funktioniert, liegt es nicht an der Dauer.
Falls nicht, schau dir die Optionen von wget bzgl. Timeouts. Ein kurzer Blick in die Man-Page verrät mir, dass --read-timeout standardmäßig auf 900 Sekunden gesetzt ist:
--read-timeout=seconds
Set the read (and write) timeout to seconds seconds. The "time" of this timeout refers to idle time: if, at
any point in the download, no data is received for more than the specified number of seconds, reading fails
and the download is restarted. This option does not directly affect the duration of the entire download.

Of course, the remote server may choose to terminate the connection sooner than this option requires. The
default read timeout is 900 seconds.
Falls dein Script keine Daten zurückschickt (und 900/60=15 Sekunden für Importieren von Daten scheint mir nicht abwegig), dann bricht wget einfach ab.

Ansonsten wirf wget in den -verbose oder gar -debug -Modus, dann siehst du was intern abläuft.



Duddle
 

lachender_engel

Aktives Mitglied

AW: PHP Skript läuft bei wget-Aufruf nicht durch

Hallo, Duddle.
Dnake für Deine Antwort und Mühe. Ich habe das gecheckt und kann sicherstellen, dass der Timeout von wget nicht "schuld" an dem Phänomen ist.
Ich habe in das Skript diverse sleep-Befehle und Schleifen eingebaut und es auf ca. 100 Sekunden Laufzeit "aufbohren" können. Die Laufzeit wird in eine Log-Datei geschrieben. Daher weiß ich, dass es entsprechend lange läuft.
Der Ursache bin ich immer noch nicht auf der Spur :-(
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.615
Beiträge
1.538.352
Mitglieder
67.526
Neuestes Mitglied
Winfriedtesmer
Oben