/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
"#¤% safe_mode
Fra : Thomas Lindgaard


Dato : 09-06-04 21:15

Hejsa

Jeg har spurgt om det her tidligere men har ikke fået løst problemet -
det er:

Brugere skal have lov til at uploade filer til serveren. Når en bruger
bliver oprettet, bliver der samtidig lavet en folder på serveren som
brugerens filer vil blive lagt i. Denne folder bliver chmod'et til 777,
så det i hvert fald ikke er dér det går galt.

Upload-siden gør efterfølgende:

copy($_FILES['file']['tmp_name'], <ny folder>/<nyt navn>);

men så får jeg meldingen

Warning: copy(): SAFE MODE Restriction in effect. The script whose uid
is 4425 is not allowed to access <ny folder> owned by uid 13 in
upload.php on line 52

Det virker fint hvis jeg opretter folderen til brugeren manuelt via FTP -
hvordan hulen får jeg oprettet en folder som jeg kan skrive til via PHP?
Jeg har prøvet at logge ind via FTP fra scriptet og ad den vej oprette
folderen, men der er ingen ftp_chmod() i PHP <5...

Jeg håber godt nok at der er et-eller-andet tåbeligt jeg har overset,
for ellers er jeg temmelig meget på bar bund :(

Mvh.
/Thomas

 
 
Per Thomsen (10-06-2004)
Kommentar
Fra : Per Thomsen


Dato : 10-06-04 21:36

Thomas Lindgaard wrote:

> Hejsa
>
> Jeg har spurgt om det her tidligere men har ikke fået løst problemet -
> det er:
>
> Brugere skal have lov til at uploade filer til serveren. Når en bruger
> bliver oprettet, bliver der samtidig lavet en folder på serveren som
> brugerens filer vil blive lagt i. Denne folder bliver chmod'et til 777,
> så det i hvert fald ikke er dér det går galt.
>
> Upload-siden gør efterfølgende:
>
> copy($_FILES['file']['tmp_name'], <ny folder>/<nyt navn>);
>
> men så får jeg meldingen
>
> Warning: copy(): SAFE MODE Restriction in effect. The script whose uid
> is 4425 is not allowed to access <ny folder> owned by uid 13 in
> upload.php on line 52
>
RTFM:

"When safe_mode is on, PHP checks to see if the owner of the current
script matches the owner of the file to be operated on by a file
function. For example:

-rw-rw-r-- 1 rasmus rasmus 33 Jul 1 19:20 script.php
-rw-r--r-- 1 root root 1116 May 26 18:01 /etc/passwd

Running this script.php
<?php
readfile('/etc/passwd');
?>
results in this error when safe mode is enabled:

Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is
not
allowed to access /etc/passwd owned by uid 0 in /docroot/script.php on
line 2

However, there may be environments where a strict UID check is not
appropriate and a relaxed GID check is sufficient. This is supported by
means of the safe_mode_gid switch. Setting it to On performs the relaxed
GID checking, setting it to Off (the default) performs UID checking. "
   -- http://dk.php.net/features.safe-mode

MVH Per Thomsen,
http://www.pert.dk/

Peter Brodersen (09-06-2004)
Kommentar
Fra : Peter Brodersen


Dato : 09-06-04 22:09

On Thu, 10 Jun 2004 22:35:55 +0200, Per Thomsen <pert@pert.dk> wrote:

>RTFM:

Heh, manualen er mildest talt rådden angående SAFE_MODE og sikkerhed!

Det ville være langt mere relevant at henvise til den rette funktion,
nemlig move_uploaded_file(), der ikke er begrænset af SAFE_MODE (men
selvsagt kun virker på uploaded filer)
http://php.net/move-uploaded-file

--
- Peter Brodersen

Ugens sprogtip: at tjekke (og ikke at checke)

Ulrik Nielsen (09-06-2004)
Kommentar
Fra : Ulrik Nielsen


Dato : 09-06-04 21:42

Thomas Lindgaard wrote:
>
> men så får jeg meldingen
>
> Warning: copy(): SAFE MODE Restriction in effect. The script whose uid
> is 4425 is not allowed to access <ny folder> owned by uid 13 in
> upload.php on line 52

det har ikke noget med rwx rettighederne at gøre, du opretter mappen
gennem ftp, som én bruger, men webserveren køre sikkert som en anden
bruger... så når webbrugeren(apache) prøver at oprette filen i
ftpbrugerens bibliotek går det galt.

hvis det er hos en ekstern udbyder at der er problemer, så få dem til at
ændre ejerskabet på den pågældende mappe...

--
>> ulrik nielsen
excuse of the day : I'm not sure. Try calling the Internet's head
: office -- it's in the book.
from bofh : http://www.cs.wisc.edu/~ballard/bofh/

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408943
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste