Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: chmod na katalogu gdzies glebiej w strukturze
Forum PHP.pl > Forum > Przedszkole
yavaho
Chce zmienic prawa katalogu o nazwie: "katalog_C". Katalog ten znajduje sie gdzies glebiej w strukturze katalogow na serewerze. Powiedzmy ze struktura katalogow wyglada tak:
katalog_A/katalog_B/katalog_C
Aby zmienic prawa katalogu: "katalog_C" to musze zmienic rowniez prawa wszystkich katalogow nadrzednych?
Bo w ten sposob jak ponizej nie moge zmienic praw katalogu_C
chmod("katalog_A/katalog_B/katalog_C", 0777)
Jak mam to zrobic? (oczywiscie w php, bo za pomoca klienta FTP nie ma problemu).
Nosfi
Rozumiem, że plik php który zmienia prawa znajduje się w głównym katalogu (w tym samym co katalog_A):

./plik.php
./katalog_A/katalog_B/katalog_C

bo jeśli nie to musisz zapodać konkretną ścieżkę do katalogu którego prawa chcesz zmienić.

Skorzystaj np. ze zmiennych serwerowych ($DOCUMENT_ROOT, itp) lub podaj dokładną ściężkę serwerową ... jeśli jej nie znasz do phpinfo(); i wyciągniesz to sobie tam.
FiDO
Za pomoca klienta FTP nie ma problemu, bo wtedy dzialasz z prawami swojego konta, a co za tym idzie jestes wlascicielem wszystkich tych katalogow i masz do nich prawa zapisu.
Jednak robiac to z php dzialasz z prawami serwera www, ktory nie ma praw do tych katalogow (sam sobie nie nada, a Ty raczej tego nie robiłeś), a zeby zmienic prawa katalogu katalog_C musisz miec prawa do zapisu dla katalogu katalog_B.
Najprostszym rozwiazaniem byloby nadanie katalogowi katalog_B praw do zapisu dla Others.
Dobrym zwyczajem byloby tez zabezpieczenie swojego katalogu domowego przed innymi uzytkownikami z tego serwera (o ile juz tego nie ma..), tak zeby nie mogli wchodzic do Twojego HOME'a, bo jak zobacza, ze masz katalog w prawami dla Others to moga probowac namieszac swoimi skryptami (wypadalo by odebrac prawa dla grupy, zeby nie mogli namieszczac bezposrednio ze swojego konta)
yavaho
To jest strona na ktorej kazdy uzytkownik ma swoja galerie. Do tej pory to admin za pomoca FTP tworzyl katalogi i wrzucal fotografie. Teraz chce dac uzytkownikom taka mozliwosc aby sami mogli sobie dorzucac swoje fotografie przez www za pomoca formularza.
W glownym katalogu jest stworzony jeden katalog [galerie] ktory ma nadane prawa 0777 a w tym katalogu beda tworzone podkatalogi dla kazdego uzytkownika osobno. I wlasnie nie umiem im nadac praw za pomoca chmod.
  1. <?php
  2. $root=$_SERVER['DOCUMENT_ROOT']; // Mam dokladna sciezke na serwerze
  3. $galerie=&#092;"galerie\"; // nazwa pierwszego katalogu ktory ma juz chmod 0777
  4. $uzytkownik=&#092;"nick_uzytkownika\"; // katalog uzytkownika ktoremu chce nadac odpowiednie prawa
  5. chmod(&#092;"$root/$galerie/$uzytkownik\", 0777); // i nie moge wykonac tego polecenia
  6. ?>
Plik php z ktorego to odpalam znajduje sie w glownym katalogu na stronie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.