Mailinglisten-Archive |
Hallo!
Mein Problem hat sich soeben gelöst. Scheinbar gibt es auf unseren
Servern doch ein Problem mit dem exec-Befehl. Jedenfalls habe ich jetzts
Reinholds Variante mit dem system()-Befehl ausgeführt - was dann
problemlos funktioniert hat.
Grüße,
Julian
Julian Schwarz schrieb:
> Hallo Reinhold!
> Danke schonmal für den Tip. Leider aber klappt es noch immer nicht. Wie
> auch der nohup-Befehl funktioniert deine Variante problemlos über SSH.
> Integiere ich den Aufruf dann in eine PHP-Datei dann funktioniert
> nichts. Es scheint als würde der exec-Befehl von php ignoriert. An exec
> an sich kann es wiederum aber auch nicht liegen, da ich andere
> Anwendungen wie z.B. gzip problemlos darüber ansteuern kann.
> Noch einen Idee?
>
> Gruß,
> Julian
>
> Reinhold Jordan schrieb:
>
>> Hallo,
>>
>>
>>
>>> In meinem Skript mache ich folgenden Aufruf:
>>> exec("nohup php /www/test-de/system/scripts/makePortalEntryStatistic.php
>>> &");
>>>
>>> Wenn ich das Skript mit dem obigen Befehl im Browser aufrufe, wird die
>>> Seite solange geladen, bis auch der nohup-Befehl ausgeführt ist (ca. 20
>>> Sekunden).
>>> Führe ich nun den exakten Befehl per SSH aus, dann läuft alles nach
>>> Plan: Der Befehl rückt in den Hintergrund - ich kann per SSH sofort
>>> wieder Eingaben machen.
>>>
>>>
>> ich habe gelegendlich ein ähnliches Problem auch mit SSH. Ich kann zwar
>> sofort wieder Eingaben machen, aber wenn ich die Verbindung beende, hängt
>> es irgendwo.
>>
>> Wenn ich dagegen den Prozess verzögert vom System starten lasse, klappt's :)
>>
>> echo "php /pfad/makePortalEntryStatistic.php" | at now + 1 minute
>> von PHP aus also
>> exec("echo \"php /pfad/makePortalEntryStatistic.php\" | at now + 1 minute");
>>
>> Vieleicht hilft's
>>
>> Gruß, Reinhold
>>
>>
>>
>
>
php::bar PHP Wiki - Listenarchive