54922
Goto Top

IIS - Ordner-Berechtigung für Dateiupload unter PHP

IIS 6 und PHP 5

Hallo!

Ich betreibe einen IIS-Webserver. Mit PHP möchte ich den Dateiupload ermöglichen. Mittels PHP-Funktion move_uploaded_file() möchte ich die Datei aus dem temporären Verzeichnis in das Upload-Verzeichnis verschieben.

Leider bekomme ich stets die Meldung "Unable to move - Permission denied". Offenbar sind also die Rechte für den Upload-Ordner nicht richtig gesetzt.

Weiß jemand, welche Rechte ich setzen muss, damit die o.g. PHP-Funktion klappt?

Danke im Voraus.

Content-Key: 70241

Url: https://administrator.de/contentid/70241

Printed on: April 23, 2024 at 21:04 o'clock

Member: gi-networx
gi-networx Oct 05, 2007 at 14:08:40 (UTC)
Goto Top
Hi,

du musst auf den entsprechenden Ordner Schreibrechte für den Benutzer IUSR_SERVERNAME setzen.
Windows greift bei anonymen Webverbindungen mit dem User IUSR_SERVERNAME stellvertretend für den "anonymen" Surfer auf das Dateisystem zu.

Wenn das nicht funktioniert, versuche alternativ auch mal dasselbe mit IWAM_SERVERNAME. Ich bin mir im Moment nicht 100% sicher welcher Account der richtige ist (evtl. musst du auch beiden Schreibrechte gewähren). Windows startet den IIS-Prozess mit dem User IWAM_SERVERNAME. Und da PHP ja eigentlich ein Child-Prozess des IIS-Prozesses ist könnte es sein, das du IWAM... anstatt IUSR_ verwenden musst.

Musst du einfach mal ausprobieren, kannst ja dann hier bescheid sagen face-smile

Wenn du im IIS mehrere Application Pools hast musst du natürlich dem entsprechenden anderen User Schreibzugriff gewähren, unter welchem die Applikation läuft.

Gruß, Michl
Member: Dani
Dani Oct 05, 2007 at 15:15:42 (UTC)
Goto Top
Hi Michl,
einfach beide User hinzufügen...denn wenn du mal nur authtentifizierten Zugriff zulässt und auf der Seite dann einen Upload hast, trifft der Iuser_%servername% nicht mehr zu. Einfach bei beiden User "Vollzugriff" setzen.
Das TEMP - Verzeichnis befindet sich ja im PHP Ordner.


Grüße
Dani
Mitglied: 54922
54922 Oct 08, 2007 at 15:46:32 (UTC)
Goto Top
Irgendwie haut es nicht hin.

Muss ich beide Ordner freigeben? Zum 'Upload wird derzeit das Temp-verzeichnis genutzt, das nicht im PHP-Ordner liegt.

Ändere ich die Rechte im Windows-Explorer oder mit der Serververwaltung?

Gibt es zum IIs ein gute Einsteiger-Handbuch?

Danke schon mal im Voraus.
Member: Dani
Dani Oct 08, 2007 at 16:29:13 (UTC)
Goto Top
Moin,
also ich sage es mal anders: In der php.ini sind die entsprechenden Verzeichnisse definiert. In diesen Verzeichnissen den User hinzufügen.


Grüße
Dani