thomas.w
Goto Top

Apache PHP Dienst in Windows Zugriffrechte auf Netzwerklaufwerk

Hallo,

Ich arbeite in einem Windows 2003 Netzwerk. Auf meinen Entwickler PC (Windows 7) läuft ein Apache Dienst und PHP. Weiterhin gibt es ein freigegebenes Netzwerklaufwerk M:

Skript 1: test.php
<?php

 $sData = file_get_contents('M:/test/test.txt');  
 echo $sData;

?>


Problem Test Varianten
a) Wenn ich diese kleine PHP-Skript über den Apache/PHP Dienst ausführen lasse, findet er die Datei nicht.
b) Wenn ich diese kleine PHP-Skript in der Kommandozeile
c:\>php test.php
ausführe findet PHP die Datei

Frage:
Ich vermute es ist ein Rechteproblem. Welche Rechte braucht der Apache Dienst um das Skript korrekt ausführen zu könnnen?

Ich hoffe, das Beispiel macht deutlich was schief läuft.

Danke und Grüße
Thomas

Content-Key: 310386

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

Printed on: May 4, 2024 at 13:05 o'clock

Member: StefanKittel
Solution StefanKittel Jul 20, 2016 at 21:14:26 (UTC)
Goto Top
Hallo,

weil der Dienst vom Apache nichts vom Netzwerklaufwerk weiß. Das ist nur in Deinem Benutzerkontext verfügbar.

Du könntest \\server\freigabe verwenden.
Aber Du must die Zugriffsrechte ändern, da der apache normal mit lokalen Rechten läuft und kein Zugriff auf Netzwerklaufwerke hat.

Oder, einfacher, Du startest den Apache von Hand in Deinem Kontext.

Ich nutzte gerne XAMPP dafür.

Stefan
Member: thomas.w
thomas.w Jul 21, 2016 at 05:32:07 (UTC)
Goto Top
Danke Stefan!

Ok, der Dienst muss in einem Kontext laufen, in dem die notwendigen Netzwerklaufwerke freigegeben sind. Soweit verstanden.
Passend dazu vielleicht dieser Link: http://www.vectorsoft.de/Blog/2013/09/Zugriff-auf-Netzwerkressourcen-ue ...

Aber wie verhält es beispielsweise mit UNC Pfadangaben
<?php

 $sData = file_get_contents('//ServerM/test/test.txt');  
 echo $sData;

?>

Da habe ich das selbe Problem wie oben beschrieben. In der Kommandozeile klappt es, über den Dienst nicht. Was fehlt dem Dienst um über UNC zugreifen zu können?

Danke und Grüße
Thomas
Member: thomas.w
thomas.w Jul 21, 2016 at 05:41:45 (UTC)
Goto Top
Da ich hier keine Adminrechte habe, muss ich leider ein wenig Dumm fragen..

Danke und Grüße
Thomas
Mitglied: 129813
129813 Jul 21, 2016 at 07:07:31 (UTC)
Goto Top
Hi.
Zitat von @thomas.w:
Was fehlt dem Dienst um über UNC zugreifen zu können?
The service must be run with credentials which have access rights to the UNC share.

Regards