Ankündigung

Einklappen
Keine Ankündigung bisher.

Shellscript wird nicht ausgeführt

Einklappen

Neue Werbung 2019

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

  • Shellscript wird nicht ausgeführt

    Hallo zusammen

    Ich führe nach dem Upload von Bildern ein kleines Shellscript auf dem
    Webserver aus, welches die Bilder verkleinert und mit Wasserzeichen
    versieht. Das klappte bisher problemlos.

    Nun wird seit heute folgende Fehlermeldung ausgegeben:

    Warning: shell_exec() [function.shell-exec]: Cannot execute using
    backquotes in Safe Mode
    in /srv/www/vhosts/xxxxxxxxxx/httpdocs/intern/process.php on line 70

    Die Zeile 70 der process.php enthält

    shell_exec('/srv/www/vhosts/xxxxxxxxxxxxx/httpdocs/temp/fotoresize');

    Wurde da nun in PHP der SafeMode auf "on" gestellt?

    Wie kann ich denn mein Script wieder ausführbar machen? Hat es was mit
    Quoting zu tun?

    Ich versteh wieder mal Bahnhof...

    Vielen Dank für Eure Hilfe.

    Andy


  • #2
    Dein Ansatz is gut, hättest ihn weiter verfolgen können. Und hier sogar nochmal in Kurzfassung.
    Zitat von Manual
    string shell_exec ( string $cmd )
    This function is identical to the backtick operator.
    (Zusammenhang zu "backquotes").
    Zitat von Manual

    Anmerkungen
    Anmerkung: Diese Funktion steht im Safe Mode nicht zur Verfügung.
    (Sonstiges )

    Nicht jeder Fehler ist ein Bug.

    Kommentar


    • #3
      Und kann ich jetzt was dran ändern?

      - SafeMode = off?

      In der php.ini geändert - Apachen neu gestartet - bleibt aber laut phpinfo auf On???

      - shell_exec aktivieren?

      safe_mode_exec_dir/srv/www/vhosts/xxxxxx/httpdocs/intern/ - Darin liegt die aufrunde php-Datei
      safe_mode_exec_dir/srv/www/vhosts/xxxxxx/httpdocs/temp/ - Darin liegt das Shellscript

      Beides bringt keine Änderung

      Oder kann ich noch anders mein Script aufrufen? Any hints?

      Andy

      Kommentar


      • #4
        SafeMode = on?
        SafeMode = off wäre sinniger ^^
        shell_exec aktivieren?
        Geht meines Erachtens nicht.
        Nur wie?
        Beim Hoster betteln
        Oder kann ich noch anders mein Script aufrufen?
        Programm ins safe_mode_exec_dir verlegen, dann zum Beispiel exec verwenden (oder einer der Derivate). Haste kein offenes Verzeichnis, sieht es ziemlich finster aus.
        Nicht jeder Fehler ist ein Bug.

        Kommentar


        • #5
          Es ist ein virtueller Server, auf den ich Rootzugang habe.

          Kann ich das dann nicht selbst einstellen?

          Und warum klappt mein SafeMode =Off in /etc/php.ini nicht?

          Aber mit exec() antelle von shell:exec() geht es, wenn ich safe_mode_exec_dir setze

          Andy

          Kommentar


          • #6
            mich interessiert das, was für ein programm hast du das das verkleinern kan, kanst du mir das mal schicken und wie du die machst mfg

            ->icq = 354003950 oder kinimodmeyer@web.de

            oder pm

            Kommentar


            • #7
              ja das programm interessiert mich auch ICQ 259747607 mail klein@piperweb.de

              Kommentar


              • #8
                [quote=sinai;411]Es ist ein virtueller Server, auf den ich Rootzugang habe.

                Kann ich das dann nicht selbst einstellen?

                Und warum klappt mein SafeMode =Off in /etc/php.ini nicht?[quote]Womöglich falsche php.ini (siehe phpinfo)? Apache-Neustart?

                Zitat von sinai Beitrag anzeigen
                Aber mit exec() antelle von shell:exec() geht es, wenn ich safe_mode_exec_dir setze

                Andy
                Nur im entsprechenden Verzeichnis.
                Nicht jeder Fehler ist ein Bug.

                Kommentar


                • #9
                  Zitat von KingCrunch Beitrag anzeigen
                  Zitat von sinai Beitrag anzeigen
                  Es ist ein virtueller Server, auf den ich Rootzugang habe.

                  Kann ich das dann nicht selbst einstellen?

                  Und warum klappt mein SafeMode =Off in /etc/php.ini nicht?
                  Womöglich falsche php.ini (siehe phpinfo)? Apache-Neustart?
                  Den Indianer hab ich natürlich neu gestartet - ohne Ergebnis. Und auch richtige php.ini (laut phpinfo(). Hab eben gefunden, dass ich das in Plesk einstellen kann/muss. Immer diese GUIs

                  Zitat von KingCrunch Beitrag anzeigen
                  Nur im entsprechenden Verzeichnis.
                  Logisch.

                  Andy

                  Kommentar


                  • #10
                    Heißt das jetzt: Problem gelöst?
                    Nicht jeder Fehler ist ein Bug.

                    Kommentar


                    • #11
                      Es gibt zwei Möglichkeiten:

                      SafeMode=on und Aufruf des Shellscripts per exec() im safe_mode_exec_dir

                      SafeMode=Off und Aufruf per shell_exec()

                      Werde wohl den SafeMode auf ON stellen

                      Andy

                      Kommentar

                      Lädt...
                      X