3 Stimmen

PHP auf IIS - Exec gibt 1 zurück

Ich habe ImageMagick, IIS 6, Ghostscript und PHP 5.3.1 auf einem Windows Server 2008 installiert und versuche, eine PDF-Datei in ein JPG-Vorschaubild umzuwandeln.

Es scheint jedoch nicht zu funktionieren - der Aufruf von exec() ergibt einen Rückgabecode von 1 (was meines Wissens nach bedeutet, dass ein allgemeiner Fehler aufgetreten ist). Die Ausgabevariable ist einfach ein leeres Array. $output ist einfach ein leeres Array. Das Gleiche passiert, wenn ich anstelle von exec() system() verwende.

Der Befehl scheint von der Befehlszeile aus zu funktionieren, daher wäre mein erster Gedanke ein einfaches Berechtigungsproblem... Das Verzeichnis ist beschreibbar für PHP, weil das Skript, das eine PDF in das Verzeichnis hochlädt, funktioniert, und ich habe auch überprüft, dass jeder die Berechtigung hat, in das Verzeichnis zu schreiben.

Außerdem ist der sichere Modus deaktiviert.

Ideen, was das Problem sein könnte?

Relevanter Code:

Hinweis: Während ich dies auf Apache auf Mac OS X testen würde, scheine ich ImageMagick oder Ghostscript nicht richtig installiert zu bekommen.

Ich habe auch sichergestellt:

  • Richtige Großschreibung für die Dateinamen (ohnehin alles in Kleinbuchstaben)
  • Verwendung des vollständigen Pfads von convert.exe zusätzlich zu einfach convert.exe

UPDATE:

Nach der Überprüfung des Task-Managers wird convert.exe ausgeführt und nimmt CPU-Zeit in Anspruch, was mir nahelegt, dass es Dateiberechtigungen irgendwelcher Art sind... Ich werde es jetzt überprüfen.

1voto

Andrew M Punkte 4138

Es stellte sich heraus, dass es ein Berechtigungsproblem mit etwas in IIS gab - die Website wurde unter einem anderen Benutzer als der Befehl von CMD ausgeführt, was offensichtlich dazu führt, dass es unter IIS nicht funktioniert, da es über weniger Berechtigungen verfügt als von CMD aus.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X