Indianin
6.10.2003, 08:25:55
Podczas rozpakowywania plików na serverze skrypt tworzy nowy folder . Wszysko działa pięknie z jednym ale . Nie mam dostępu do nowo utworzonego folderu przez FTP . Dlaczego ? Ownerem jest "wwwrun" a grupa "nogroup" . A ja jestem "jakis_user" i należe do grupy "jakas_grupa" .
Pytanie : jaką funkcję zastosować żeby podczas tworzenia folderu zdefiniować ownera i grupę . Ewentualnie jak to zmienić dostęp do już istniejącego folderu i plików .?
wassago
6.10.2003, 10:17:21
moze tylko by wystarczylo chmod'a zmienic? a jezeli to nie pomoze to musialbys rozmawiac z adminem serwa aby dal ci odpowiednie uprawnienia..
pozdrawiam
adwol
6.10.2003, 10:21:19
php Początkujący -> Serwery
Indianin
6.10.2003, 12:23:41
Chmodów nie mogę zmienić - nie mam uorawnień do tych plików . Z adminem już rozmawiałem - stwierdził że to względy bezpieczeństwa itp .
wassago
6.10.2003, 13:22:29
jezeli nie masz uprawnien to jak chcesz definiowac grupe userow? pogadaj z adminem zeby ci udostepnil jede folder z ograniczeniami - tyle zebys mogl "cos" w nim robic...
pozdrawiam
Indianin
6.10.2003, 20:41:48
Ja mogę robić co chcę z plikami , ale nie jeżeli je tworzy skrypt . Mam uprawnienia usera ale nie roota . Na innych serverach ten sam skrypt tworzył pliki z ownerem "moj_login" tu cholera uparła się na "wwwrun" .
spenalzo
6.10.2003, 21:22:33
1. Jak tworzysz katalog przez php to dajesz paramter chmod (ósemkowo) ?
2. Masz nadane prawa 777 (lub 755) dla pliku z ktorego tworzysz katalogi?
Indianin
7.10.2003, 02:55:15
1.) Tak wydląda fragment kodu:
Kod
if(!file_exists($this->componentDir()) && !mkdir($this->componentDir(),0777))
2.) Tak
krecik
12.10.2003, 19:15:22
A nie jest czasem tak ze php na serwerze ma uruchomiony tryb safemode ? Wtedy wlasnie tak jest, ze z poziomu skryptu masz dostęp tylko do plików które mają takie same warunki włascicielstwa (ale mi sie napisało - chodzi o takie samo user i grupa) jak skrypt wywoływany. No i wtedy wlasnie jest problem - www tworzy nowe pliki z uprawnieniami wwwrun/www, a ty dzialasz jako jakis user i nie masz dostępu. To jest kwestia wywoływania funkcji systemowych z poziomu apache.
Wlasnie przerabiam to u siebie, tak zeby działało, przychodzą mi do głowy dwie rzeczy - pierwsza, sprawdzić jak to sie bedzie zachowywalo z uruchomioną funkcją suexec - wtedy jest szansa ze nowo tworzone przez ciebie katalogi beda miały uprawnienia ownera serwera wirtualnego.
Drugi wariant - o ktorym musze jeszcze poczytac, ale ponoc jest to rozwiązanie na wlasnie takie problemy to moduł suphp - do uruchamiania php z uprawnieniami uzytkownika bedacego wlascicielem skryptu ktory sie uruchamia. ZObaczymy czy to zadziala.
Pozdrawiam
K.
kkadziolka
26.03.2011, 11:03:01
php: umask to funkcja do ustawienia domyślnych uprawnień.
umask(0770); powinno zadziałać.
erix
26.03.2011, 12:09:37
A wiesz, jak umask działa w środowiskach POSIX-owych? Chyba nie, skoro wpisujesz, jakie prawa chcesz uzyskać...
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.