Upload-Script meldet Fehler
Dennis
- php
Hallo,
habe ein Upload-Script geschrieben, das schon des öfteren gut funktioniert hat. Aber jetzt hab ich es wieder installiert und es läuft nicht :( Ich hab schon alles probiert, Berechtigungen gesetzt, darauf geachtet, dass der Pfad richtig geschrieben ist, und bekomme trotzdem diese Fehlermeldung:
Warning: copy() [function.copy]: open_basedir restriction in effect. File(/html/beta/modules/Forums/images/avatars/gallery/CHINA.GIF) is not within the allowed path(s): (/home/www/web9/) in /home/www/web9/html/beta/upload.php on line 48
Warning: copy(/html/beta/modules/Forums/images/avatars/gallery/CHINA.GIF) [function.copy]: failed to create stream: Operation not permitted in /home/www/web9/html/beta/upload.php on line 48
Was könnte diese Fehlermeldung noch aussagen, woran könnte es liegen?
Grüsse
Dennis
Hi,
habe ein Upload-Script geschrieben, das schon des öfteren gut funktioniert hat. Aber jetzt hab ich es wieder installiert und es läuft nicht :( Ich hab schon alles probiert, Berechtigungen gesetzt, darauf geachtet, dass der Pfad richtig geschrieben ist, und bekomme trotzdem diese Fehlermeldung:
Warning: copy() [function.copy]: open_basedir restriction in effect. File(/html/beta/modules/Forums/images/avatars/gallery/CHINA.GIF) is not within the allowed path(s): (/home/www/web9/) in /home/www/web9/html/beta/upload.php on line 48
Was könnte diese Fehlermeldung noch aussagen, woran könnte es liegen?
Steht doch da: Du versuchst, in ein Verzeichnis zu schreiben, in das Du nicht schreiben darfst.
Es liegt nicht an der Schreibweise des Pfads, sondern am Pfad selbst.
Du darfst nur unterhalb des Verzeichnisses /home/www/web9/ schreiben, Du versuchst aber, unter /html/... zu schreiben.
cu,
Andreas
... "restriction in effect" tönt schon mal eher seltsam...
Du hast wahrscheinlich den PHP safe mode drin...
Den rausnehmen oder move_uploaded_file() benützen anstatt copy()... Müsste funktionieren.
HTH
A.
Hallo Dennis,
Fällt Dir bei diesen Pfaden so etwas auf?
/html/beta/modules/Forums/images/avatars/gallery/CHINA.GIF
/home/www/web9/html/beta/upload.php
Du musst in PHP bei Dateisystemfunktionen die Dateinamen immer relativ zum _gesamten_ Dateisystem angeben und nicht relativ zu dem Dateisystem, das Du siehst.
Also copy (..., '/home/www/web9/html/...'); statt copy (..., '/html/...');
Obwohl move_uploaded_file natürlich sinnvoller wäre als copy.
Viele Grüße,
Christian