Apache2 und Netzlaufwerk unter WinXP

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Apache2 und Netzlaufwerk unter WinXP

Postby svenson » 21. February 2006 10:13

Hallo,

ich arbeite z.Z. mit der XAMPP Version 1.4.14, PHP: 5.1.2 und Imagemagick auf einem WindowsXP Rechner und benötige bei einem Netzwerk-Problem eure Hilfe. Ich möchte noch voranstellen, dass die ganze Sache funktioniert, wenn ich den Apache nicht als Service starte, nur gerade dies, also Apache als Service starten ist notwendig, da sich mehrer Personen (verschiedene Logins) auf den Rechner anmelden müssen.

Nun zu meinem Problem:
Wir haben hier ein Firmennetzwerk. Auf einem dieser LW liegen Grafikdateien die ich umwandeln (jpg zu gif) will. Die entstehenden Dateien sollen auf diesem NetzwerkLW geschrieben werden. Das ganze sieht in PHP so aus:

# JPG in GIF umwandeln
$convertjpg = "convert -verbose -density 200% ".$JPGBild." ".$GIFBild;
print shell_exec($convertjpg);

$JPGBild = Pfad N:\bildjpg\test.jpg
$GIFBild = Pfad N:\bildjpg\vorschau\test.gif

und es funktioniert auch, wenn der Apache nicht als Service läuft.


Für die Version "Apache als Service" habe ich das ganze für die Entwicklung vereinfacht und schreibe die entstehende Datei zunächst auf den localhost und will sie dann ins NetzLW kopieren- wie oben gesehen funktioniert es nicht (Fehlermeldung weiter unten). Der Apache läuft jetzt übrigens als Dienst mit meinen Userdaten wie es z.b. hier http://community.apachefriends.org/f/viewtopi ... tzlaufwerk steht.

# JPG in GIF umwandeln
print shell_exec("convert -verbose \\\\Ap1739\\bild\\test.jpg test.gif");

dies schreibt mir die Datei test.gif unter htdocs, ich komme somit also lesend ins NetzLW.

Wenn ich das ganze jetzt aber kopieren will z.B. mit
copy('C:\Programme\tools\apachefriends\xampp\htdocs\test.jpg','\\\\Ap1739\\bild\\copy.jpg');

bekomme ich die Fehlermeldung:
Warning: copy(\\Ap1739\\test.jpg) [function.copy]: failed to open stream: Permission denied in C:\Programme\tools\apachefriends\xampp\htdocs\test.php on line 10

und im ErrorLog steht auch: Permission denied


Woran liegt das bzw. was kann ich machen damit dies auch als Dienst funktioniert? Hat die erstellte Datei vielleicht durch PHP einen neuen Nutzernamen, welcher von der Apache-Dienst Signatur (mein Username) abweicht, oder muß ich das NetzLW etwa in die httpd.conf schreiben. Ich habe wirklich keine weiter Ideen. Vielleicht ja aber ihr.

Schon mal vielen Dank.

Grüße
Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47

Postby Wiedmann » 21. February 2006 11:38

Wenn ich das ganze jetzt aber kopieren will z.B. mit
Code: Select all
copy('C:\Programme\tools\apachefriends\xampp\htdocs\test.jpg','\\\\Ap1739\\bild\\copy.jpg');

bekomme ich die Fehlermeldung:
Warning: copy(\\Ap1739\\test.jpg) [function.copy]: failed to open stream: Permission denied in C:\Programme\tools\apachefriends\xampp\htdocs\test.php on line 10

In deinem copy-Befehl taucht der Pfad aus der Fehlermeldung weder als Ziel noch als Quelle auf. Bist du sicher die richtige Codezeile gepostet zu haben?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Pfad

Postby svenson » 21. February 2006 12:38

Hi,

der Pfad war falsch nur leider ändert sich nichts am Ergebnis.

copy('C:\Programme\tools\apachefriends\xampp\htdocs\copy.jpg','\\\\Ap1739\\bild\\copy.jpg');

Ich habe den Apache zur Sicherheit gleich noch einmal "normal" gestartet und

copy("test.gif","N:/bild/test.gif");

funktioniert.

habt Ihr Ideen?

Danke
Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47

Postby Wiedmann » 21. February 2006 12:56

'\\\\Ap1739\\bild\\copy.jpg'

Alternativ könntest du auch mal '\\\Ap1739\bild\copy.jpg' oder '//Ap1739/bild/copy.jpg' testen.

Der Benutzer unter dem der Apache-Dienst läuft hat auch wirklich die erforderlichen (Schreib-) Rechte für diese Share?

Ansonsten kann ich das gerade nicht genau nachstellen, da es
mit der XAMPP Version 1.4.14, PHP: 5.1.2

diese Kombination von uns nicht gibt.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby svenson » 21. February 2006 14:51

Hallo,

ich kann als Nutzer auf diesem LW Verzeichnisse erstellen, löschen usw. Ich gehe somit davon aus, dass ich alle Rechte habe, oder gibt es da noch Unterschiede wenn ich den Apachen als Dienst starte und ihm meine ID gebe?!

Vorsorglich habe ich jetzt noch einmal den Xampp 1.5.1 aufgespielt [PHP: 5.1.1] und dann ohne irgend etwas zu ändern folgendes versucht:

Xampp "normal"
copy("copy.jpg","N:/bild/copy.jpg");
funktioniert


Xampp als Dienst
(Dienst meine NutzerID und das Passwort gegeben)
- der lesende Zugriff funktioniert

copy("copy.jpg","\\\\Ap1739\\bild\\copy.jpg");

Warning: copy(\\Ap1739\bild\copy.jpg) [function.copy]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\imagemagick\test.php on line 14


copy("copy.jpg","\\\Ap1739\bild\copy.jpg");

Warning: copy(\\Ap1739\bild\copy.jpg) [function.copy]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\imagemagick\test.php on line 14


copy("copy.jpg","//Ap1739/bild/copy.jpg");

Warning: copy(//Ap1739/bild/copy.jpg) [function.copy]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\imagemagick\test.php on line 14

Das ErrorLog zeigt jetzt auch nichts mehr an, warum nur?

Kannst du denn Fehler reproduzieren, bzw. liegt das Problem vielleicht am PHP oder aber ... ?

Danke
Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47

Netzlaufwerk

Postby svenson » 21. February 2006 16:32

Ich vergaß zu erwähnen, dass natürlich mein Netzlaufwerk auch mit meinem Benutzerkonto verbunden wurde. Ohne diesen Arbeitsschritt funktioniert auch das Lesen nicht.

Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47

Postby svenson » 22. February 2006 09:56

Hallo,

kennst du vielleicht einen Weg auf dem ich die Rechte kontrollieren kann, um herauszubekommen warum das Schreiben nicht funktioniert?

Danke
Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47

jetzt funktioniert es!!!

Postby svenson » 23. February 2006 09:34

Hallo,

jetzt funktioniert es.

Die vollständige Codezeile für die Umwandlung der Datei mit Imagemagick auf einem Netzlaufwerk mit dem Apachen als Diernst gibt es hier zu sehen:

print shell_exec("convert -verbose \\\\Ap1739\\test.pdf \\\\Ap1739\\bild\\copy.jpg");

Viel Spaß
Sven
svenson
 
Posts: 6
Joined: 21. February 2006 08:47


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 24 guests