Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] wrong file owner
Forum PHP.pl > Forum > Przedszkole
fredman
Mam na stronce dwa skrypty, jeden tworzy folder i uploaduje do niego pliki , drugi usuwa wskazany folder i wszytkie pliki w nim sie znajdujace
1. gdy uploaduje przez stronke to moge tez przez nia skasować
2. jesli uploaduje przez klienta FTP to nie moge usunać przez stronke chyba ze wczesnij przez klienta ustawie na tych plikach chmod 0777

z tego co sie zorientowalem to problem tkwi we włascieilu plików inny gdy wrzucam przez www a inny przez FTP.
myslem ze poradze sobie z tym jesli uzyje skryptu który zmini mi chmod plikow na 0777 ale chmoda też nie moge zminiac gdy jest inny własciciel

nie che za kazdym razem zminiac chmoda przez klienta FTP

dodatkowo nie wiem tez niestety jak zmienic chmod uploadowanego pliku. umiem poradzic sobie z folderem bo robię tak, że tworze folder i od razu ustawiam mu chmod ale nie weim jak to zrobić z uploadowanym plikiem na tych zmiennych plikowych $FILE[cośtam] .
sadsmiley02.gif sadsmiley02.gif
rybik
Problem znany i (nie) lubiany głównie przy CMSach s phpowym uploaderem czy installerami. Jak już dosc szybko zauważyłeś (mnie leniwi admini psubraty 3 miesiace odsyali na drzewo, ze ma skrypt poprawic) - problemem sa prawa wlasnosci do plikow ktore sa ponad chmodem. Opisze to nieco partyzancko i moze niezbyt precyzyjnie bo az tak gleboko nie znam tematu ale idee wylapisze od razu.

Przy okazji bardzo goraco poprosze o sprostowanie i wyjasnienia jak ktos to zna z poziomu konfiguracji php i apacza.

fakty:
- programy (ftp, php) dzialajace jako inni userzy serwera nie moga ruszac "nieswoich plikow"
- pliki i katalogi sa tworzone z przypisanym userem procesu ktory je tworzy
- zmiany wlasciciela (php: chown) moze dokonac tylko superuser

hipotezy:
- problem wystepuje tylko gdy php dziala "jako CGI"
- lub ma celowo zmieniana maske fileownera
- a przy tym wszystkim ktos nie zadbal o poprawne przypisanie userow do grup (user php nie wie ze jest "w grupie" usera apache)

w ten sposob i ftp i php krzyczy "to moje, nie ruszaj" i jestes w okolicach kiszki stolcowej


Po wielotygodniowych walkach z adminem - wyczuwalem wtedy o co chodzi ale nei umialem tego technicznie nazwac, to w koncu ja wyslalem admina na drzewo i sie przenioslem na serwer Netmark, tutaj wystarczyl krotki komunikat "prosze mi ustawic serwer tak zeby nie bylo konfliktu fileownerow miedzy php i ftp", za pol godziny mialem po problemie.

Przy konflikcie fileownerow nie wykonasz zadnej operacji poza kopiowaniem cudzego pliku, chmodowanie to slepa uliczka, to może, powinno i musi działac sprawnie inaczej a jak nie potrafia tak ustawic serwera to wiesz co ... -> drzewo smile.gif

Z praktyki dla malo wymagajacych aplikacji wynika ze najlepiej zeby i php i ftp chodzilo z tym samym userem (najczesniej jest to nazwa Twojego konta na serwerze wspoldzielonym). Spotkalem tez serwer gdzie php dzialalo jako apache a ftp jako noone i o ile z ftp nie bylo klopotow to pbsluga plikow przez php byla nieszczelna, moglem sobie wedrowac po calym serwerze.
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.