![]() |
exec in PHP-Script geht nicht
Hi!
ich habe das folgende PHP-Script:
Code:
Ihr seht, überall wo das
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) { Header("WWW-Authenticate: Basic realm=\"VNC Shell Control by Wolfgang\""); Header("HTTP/1.0 401 Unauthorized"); echo "Der Zugriff wurde verweigert!\n"; exit; } else { /* Teil der kontrolliert das der Benutzer berechtigt ist! */ if ( isset($_GET['shutdown']) || isset($_GET['reboot']) || isset($_GET['standby']) ) { if ( isset($_GET['shutdown']) ) { // Parameter -f : Alle Prozesse beenden exec('winend.exe -f -s'); // <!---------------- Hier exit; } elseif ( isset($_GET['reboot']) ) { // Parameter -f : Alle Prozesse beenden exec('winend.exe -f -r'); // <!---------------- Hier exit; } elseif ( isset($_GET['standby']) ) { // Parameter -f : Alle Prozesse beenden exec('winend.exe -f -b'); // <!---------------- Hier exit; } } else { echo "<script language='JavaScript'>alert('Kein Modus!');</script>"; } } ?>
Code:
ist, ist in "exec" Befehl!
// <!---------------- Hier
Diese "exec"'s werden jedoch nicht ausgeführt! Es gibt keine Fehler und keinen Safe Mode ( PHP ist in der Standart-Konfiguration )! Das Script soll ein Netzwerk-Server herunterfahren/neustarten/Standby setzten:
Code:
Danke im Voraus!
[url]http://192.168.0.8/winend.php?shutdown=yes[/url] // Herunterfahren
PS: Ich weiss , der Code ist schlampig programmiert, dies wird noch behoben! |
Re: exec in PHP-Script geht nicht
Hmm, ich kenne mich jetzt nicht so gut damit aus, aber ich würde glatt sagen das vielleicht die Pfadangabe zu dem Programm winend.exe fehlt und er es deswegen nicht ausführen kann!
|
Re: exec in PHP-Script geht nicht
Ich habe es jetzt mit
Code:
und
C:\WINDOWS\winend.exe
Code:
probiert.
C:/WINDOWS/winend.exe
:( Ohne Erfolg :( |
Re: exec in PHP-Script geht nicht
Du musst den Slash quoten.
Delphi-Quellcode:
MfG
C://Windows//winend.exe
Thorsten |
Re: exec in PHP-Script geht nicht
@omata
Nein, funktioniert leider auch nicht! |
Re: exec in PHP-Script geht nicht
Hallo,
ich habe auch lange rumprobiert, bis sowas ging. Was für eine Anwendung willst du da den starten? Was ist winend.exe? Ich habe bei mir nur eine Konsolenanwendung benutzt. MfG Thorsten |
Re: exec in PHP-Script geht nicht
Der Benutzer in dessen Kontext der Webserver läuft muss auch das recht haben diese anwendung zu starten.
|
Re: exec in PHP-Script geht nicht
Liste der Anhänge anzeigen (Anzahl: 1)
was ist winend.exe für ein Programm? Hast du das selbst geschrieben? Wenn es auf deinem Server bei dir zu Hause läuft, beobachte einfach mla, was auf deinem Server passiert. Das Programm sollte sich nämlich öffnen, wie, wenn du es ganz normal starten würdest. Schreib doch einfach mit in Delphi (oder irgendwas anderem) eine einefach Konsolenanwendung, die nur "Hello world" oder sowas ausgibt. Ich mache es dir einfach (in Dev-C++ ist so ein Programm nämlcih 3 Mausklicks) und hänge dir ein Programm an, welches nicht anderes macht als "Hello world" auszugeben. Probier das mal mit passthru() in PHP auszuführen. Dann sollte dein Script nämlich Hello world ausgeben.
Um zu probieren, ob du den Dateipfad richtig angegeben hast, schreib einfach mal das: if file_exists('Dateipfad') print('Dateipfad korrekt!'); in dein PHP-Skript. Prüfe mal in der php.ini, ob exec wirklich erlaubt ist... |
Re: exec in PHP-Script geht nicht
Hi
Ich weiss des Thema ist etwas älter aber ich genau des gleiche Problem und bin trotz dieses Threads nicht zu einer Lösung gekommen. Ich hab alles probiert aber ich bekomme immer den Fehler: Zitat:
Code:
<?
if (file_exists('ReBootMe.exe')) { echo 'Dateipfad korrekt!'; } else { echo "Nich da"; } passthru("ReBootMe.exe"); ?> |
Re: exec in PHP-Script geht nicht
Mh, eine Vermutung ist einfach mal, unter welchem "Konto" läuft dein PHP denn?
Apache als Dienst? Könnte evtl. damit zusammen hängen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz