Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sprawdzanie uprawnien nadawanych przez serwer
Forum PHP.pl > Forum > PHP
sntObar
Witam !

Chcialbym sie dowiedziec czy jest mozliwosc sprawdzenia jakich praw dostepu do plikow wymaga serwer, jakich chmodow powinno sie uzyc by pliki zostaly wykonywane poprawnie. Zainteresowalem sie tym poniewaz chcialbym napisac instalator ktory sprawdzil by jakie prawa powinien nadawac w przyszlosci tworzonym przez inny skrypt plikom. Z zalozenia uprawnienia 777 sa w zupelnosci wystarczajace do zapisu i odczytu z pliku. Jednak nie wyglada to tak pieknie w praktyce. Jestem wlascicielem konta (webd) i tam chmody ustawione sa na 644 (i wszystko gra) a gdy zmienie je na 777 wszystkie pliki php poprostu przestaja funkcjonowac. Na innych kontach gdy uprawnienia sa mniejsze niz 777 nie mozna wykonywac wielu operacji.

Pytanie brzmi - jak sprawdzic ustawienia uprawnien serwera (w php) i co je warunkuje (jaki plik) ?

Pozdrawiam !
Kinool
nie wiem czy wiesz co te liczby oznaczaja smile.gif trzy cyfry to uprawnienia dla wlasciciela grupy oraz reszty, zazwyczaj demaon httpd (apache) dziala na uprawnianiach uzytkownika ww lub nobody (zalezy od konfiguracji) wiec wazne jest by uprawnienia "reszty" byly przydzielano tak by demon mogl odczytywac plik

teraz taka mala sciaga smile.gif

1 - wykonywanie
2 - odczyt
4 - czytanie

sumy tych liczb stanowia uprawnienia dla wlascicela, grupy oraz reszty

takwiec uprawnienia 644 to (2+4=6 wlasciciel, 4 grupa, 4 reszta) tak wiec widzisz ze te uprawnienia odczytu i zapsu posiada tylko wlasciciel, pamietaj ze demon httpd nie jest uruchamaiany na twoim "koncie" tylko jet innym usere smile.gif

uprawnienia wystarczajace do odczytu i zapisu pliku to 666 (dla wszystkich) 777 to pelne prawa, lacznie z wykonywaniem, przy czym zaznaczyc trzeba ze skrypt z uprawnieniami 644 tez jest "wykonywanay" w rzeczywistosci to jest on odczytywany przez demona httpd i przekazywany do parsera php itd. uprawnieenia 7 (wykonywani) stosuje sie na plikach binarnych lub skryptach shelowych by wykonywac je z konsoli lub innego srodowsika
sntObar
Mhm, dziekuje za fatyge lecz do konca mnie nie oswieciles. Wiem co to chmod, jakie sa rodzaje uprawnien itp... ale zagwostka jest dla mnie to dlaczego przy uprawnieniach dostepu 644 skrypt zostaje wykonany a przy 777 juz nie (blad serwera). Jestes w stanie odpowiedziec na to pytanko ?
Kinool
generalnie nie powinno byc takiej sytuacji ale w manualu jest napisane:
Cytat
Notatka:  Kiedy włączony jest tryb bezpieczny, php sprawdza czy pliki lub katalogi na których mają zostać wykonane operacje posiadają taki sam UID (właściciela) jak skrypt, który jest wykonywany. W dodatku, nie możesz ustawić SUI, SGID i bitów lepkości (sticky bits).


byc moze tu jest przyczyna albo zalezy od konfiguracji servera, mozliwe za admnistrator stosuje jakies dodatkowe "sztuczki" aby ograniczyc userow lub cos w tym stylu

od siebie dodam ze mam konta na 3 serverach i jeden wlasny, na zadnym z nich nie mam problemow o ktorym piszesz
Kocurro
Jeśli masz bład serwera to oznacza, że Twój skrypt wykonuje jakaś krytyczna dla bezpieczeństwa operację i mechanizmy zabezpieczeń go odcinają.

edit:

polecam inny serwer - na webd co chwila cos kombinuja z konfiguracja i sa czeste problemy :/ wiem to z autopsji...
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.