Php Script über vorhandene Shell DATEI (nicht cli) öffnen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Php Script über vorhandene Shell DATEI (nicht cli) öffnen

    Hallo,

    ich bin neu hier, also sorry für Fehler vorneweg.

    Es gibt viele Themen zum öffnen von PHP Dateien über ein Shell commando....
    Leider habe ich hier etwas spezielles, deshalb neuer Post:

    Ich arbeite auf einer

    SUSE Linux Enterprise Server 10 (x86_64)

    mit Lampp:
    Apache/2.2.4 (Unix) DAV/2 mod_ssl/2.2.4 OpenSSL/0.9.8d
    PHP/5.2.1 mod_apreq2-20051231/2.5.7 mod_perl/2.0.2 Perl/v5.8.7

    Nun rufe ich aus dem Browser ein *.cgi File aus <internerPfad>/lampp/cgi-bin auf, das macht was, und ruft dann eine *.sh datei in dem gleichen Verzeichnis auf.
    Diese macht auch was und soll dann am Ende
    eine php Datei aus <internerPfad>/lampp/htdocs/v80/<Pfad> aufrufen, sodass man als User letztendlich bei der php Datei landet (bzw dem erzeugten html code natürlich...)

    Der code der shell Datei sieht wie folgt aus:

    #!/bin/sh
    [...]
    phpscript="<absoluterPfad>/"$1
    [...]
    echo php -f $phpscript $2 $3 $4 $5
    [...]
    php -f $phpscript $2 $3 $4 $5
    [...]
    *Ende der Shell Datei*

    Wobei $1-$5 an das shell skript übergebene Parameter sind und $1 die php Datei als "datei.php" enthält.

    Nehme ich die Ausgabe von "echo php -f $phpscript $2 $3 $4 $5" kopiere sie ihn eine CLI/console (zb. putty) und führe sie aus bekomme ich den html code in die console
    -> also funktioniert der erzeugte befehl ja von der Syntax her und der Pfad stimmt auch?!

    Rufe ich das ganze über den Browser auf rödelt er durch bis *Ende der Shell Datei* (weiß ich durch Debug outputs des cgi file bzw sh file). Aber den php Aufruf führt er nicht aus?! Auch ohne das "-f" nicht.

    Ich hatte das schonmal, dass das lief, ich weiß aber absolut nicht, was ich umgestellt haben soll, bzw. warum es jetzt nicht mehr geht.

    Kann wer helfen?

    Vielen Dank!!!

  • #2
    Gib im Shellscripzlt den absoluten Pfad zu php an. Weil du es über den Webserver startest, läuft es als Benutzer wwwrun o.ä. und der hat das PHP-CLI nicht im PATH.

    Kommentar


    • #3
      arghhhhh
      thx a lot, onemorenerd!!!!!!

      Kommentar

      Lädt...
      X