Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Tworzenie plików powyżej katalogu public_html
jacobmaster
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.05.2008

Ostrzeżenie: (0%)
-----


Witam!
Czy istnieje możliwość tworzenia plików z poziomu php powyżej katalogu public_html?
Czy jest to w jakiś sposób uzależnione od ustawień apache?

Ten post edytował jacobmaster 25.05.2008, 10:19:47
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Jest. Po prostu podajesz ścieżkę bezwzględną czyli pełną, np. /home/user/
Go to the top of the page
+Quote Post
jacobmaster
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.05.2008

Ostrzeżenie: (0%)
-----


no jaużywam ścieżki bezwzględnej "uniwersalnej"
CODE
$_SERVER['DOCUMENT_ROOT'].'/../password.dat'

czyli w wyniku mam np.
/home/users/grupa1/podgrupa2/user1/public_html/../plik.dat

kiedy ręcznie wgram na server
plik.dat to za pomoca tej ścieżki to php odczytuje i zapisuje bez problemu
ale jak nie ma pliku i chce go otworzyc z atrybutem w albo a albo nawet x to niestety nie tworzy pliku

Go to the top of the page
+Quote Post
l0ud
post
Post #4





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Nie tworzy pliku, bo PHP nie ma uprawnień zapisu dla tego folderu.

Mój pomysł: w katalogu nadrzędnym utwórz (obok public_html) inny folder, np. 'data', nastaw mu chmody 777.
Później już możesz łatwo tworzyć pliki używając ścieżki:
Kod
$_SERVER['DOCUMENT_ROOT'].'/../data/password.dat'


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
jacobmaster
post
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.05.2008

Ostrzeżenie: (0%)
-----


to niestety dla mnie nie jest rozwiązanie...
szukam rozwiązania które nie będzie wymagało od użytkownika ręcznego wgrywania plików czy tworzenia katalogów

rozumiem że php nie ma uprawnień żeby tworzyć pliki czy katalogi powyżej public_html?
to dlaczego w takim razie może zapisywać do tych plików?
Go to the top of the page
+Quote Post
.radex
post
Post #6





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Słuchaj, właśnie rada l0ud rozwiązuje problem.

Kiedy stworzysz drugi katalog (brat public_html), np. właśnie data. Kiedy nadasz mu odpowiednie uprawnienia, php będzie mógł tam zapisywać. I nie user nie musi robić przesyłu ręcznie.


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
jacobmaster
post
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.05.2008

Ostrzeżenie: (0%)
-----


źle mnie rozumiesz: pisze tu nie o jakimś konkretnym przypadku na jednym serwerze - nie byłoby w ogóle tematu - chodzi o funkcjonalność systemu który instalować będą użytkownicy na różnych serwerach (tak jak np cms) przy jednoczesnym zminimalizowaniu ręcznej ingerencji w pliki na serwerze.
Go to the top of the page
+Quote Post
mls
post
Post #8





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wszystko zależy od konfiguracji serwera (a konkretniej struktury i uprawnień plików/katalogów). Jeśli katalog nadrzędny od np. "public_html" będzie miał prawa zapisu dla wszystkich użytkowników lub ustawi się jego właściciela na użytkownika pod którym działa serwer www (+php) to wtedy i php będzie mogło tworzyć w nim nowe pliki...


--------------------
Go to the top of the page
+Quote Post
l0ud
post
Post #9





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Jeżeli chcesz zrobić uniwersalny skrypt który będzie działał na (prawie) każdym serwerze, wiec że na wielu [słabszych] nie ma dostępu ponad katalog public_html. Po prostu umieść pliki konfiguracyjne bezpośrednio w public_html, w jakimś folderze, np. data i odpowiednio je zabezpiecz, aby nie dało się ich odczytać przez bezpośrednie wczytanie.


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 03:01