Error "127" bei exec()

Sasser

Erfahrenes Mitglied
Guten Tag!

Ich versuche per:

PHP:
exec ( "/usr/bin/php5 ./test.php" );

eine Datei im Hintergrund ausführen zu lassen, welche im selben Ordner liegt. Safe-Mode ist deaktiviert und der Pfad zu PHP5 stimmt ebenfalls.

Als Error erhalte ich: 127

Warum wird dennoch die Datei nicht ausgeführt? Müssen noch bestimmte Rechte vergeben werden?
 
Zuletzt bearbeitet:
Das hier habe ich gerade auf php.net gefunden:

If you have chrooted apache and php, you will also want to put /bin/sh into the chrooted environment. Otherwise, the exec() or passthru() will not function properly, and will produce error code 127, file not found.
Quelle
 
Das ist mir gar nicht aufgefallen.

Trotzdem kommt bei allen Varianten Error 127 heraus:

PHP:
passthru ( "php test.php", $output );
passthru ( "/usr/bin/php test.php", $output );
passthru ( "/usr/bin/php5 test.php", $output );

Was mache ich falsch?

// EDIT: Habe es nun einmal probiert, indem ich die Datei als Bild einbinde (da diese ja dann ausgeführt wird) aber leider wird das Script da nur einmal ausgeführt...

If you have chrooted apache and php, you will also want to put /bin/sh into the chrooted environment. Otherwise, the exec() or passthru() will not function properly, and will produce error code 127, file not found.

Wie ist das zu verstehen? Nirgendwo ist eine Anleitung hierzu... Muss die Datei "sh" mit in das Verzeichnis gelegt werden?
 
Zuletzt bearbeitet:
Vielen Dank!

Ich habe es endlich geschafft! :D

Irgendwie war PHP-Safe-Mode wieder aktiviert, obwohl ich es mehrfach deaktiviert hatte. Nach Serverneustart wurde es endlich übernommen und mit:

PHP:
exec ( "php test.php > /dev/null &" );

funktioniert es nun endlich, wie es soll!

Noch eine Frage dazu: Wird der Prozess nach Abschluss wieder automatisch geschlossen oder habe ich zu befürchten dass mein Server sich hochschaukelt?
 
Ok vielen Dank, das wollte ich wissen.

Konnte ja sein, dass der Prozess offen bleibt und nicht wieder geschlossen wird.

Dankeschön für eure tolle Hilfe! :D
 
Zurück