Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Access]Problem ze stroną
ReBeLs513
post 2.08.2010, 07:05:43
Post #1





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

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


Przez ten kod:

<FilesMatch "\.(mp3|jpg)$">
order allow,deny
deny from all
</FilesMatch>

strona nie działa poprawnie:(, gdyż pliki o takich rozszerzeniach się nie wczytują.. Jak zablokować dostęp do plików z poziomu przeglądarki, aby na stronie się wczytywały?questionmark.gif
Szukałem już u wujka google'a i nic://

Ten post edytował ReBeLs513 2.08.2010, 09:14:38


--------------------
Przypomnij o "+", jeśli mi pomogłeś a nie zapunktowałem :P
Go to the top of the page
+Quote Post
Pilsener
post 2.08.2010, 12:00:06
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Cytat
Jak zablokować dostęp do plików z poziomu przeglądarki, aby na stronie się wczytywały?
- czytasz czasem co piszesz? Brzmi to mniej więcej tak: "jak zablokować dostęp do pliku tak, aby nie był on zablokowany?".

Wszystko do czego ma być dostęp z poziomu http wrzucasz do public, natomiast całą resztę (np. pliki .php) do application, files etc. - tam gdzie dostęp przez przeglądarkę jest niemożliwy. Pobieranie zawartości z poza public realizujesz przy pomocy np. php w sposób:
- sprawdzasz uprawnienia usera
- pobierasz plik
- wysyłasz odpowiedni nagłówek
- po kawałku wysyłasz plik do przeglądarki (jeśli jest duży, najlepiej linia po linii)

Poszukaj na forum o dowloadzie plików, przykłady były wiele razy. Np. obrazek możesz wysłać tak:
  1. $img = file_get_contents($path_do_twojego_imga);
  2. header('Content-Type: image/jpeg');
  3. echo $img;


To podstawa różnego rodzaju uploadów. Inaczej zaraz ktoś Ci wrzuci kod php i go wykona, wpisując bezpośredni url do obrazka smile.gif
Go to the top of the page
+Quote Post
ReBeLs513
post 2.08.2010, 12:36:04
Post #3





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

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


po prostu chcę zablokować użytkownikom dostęp do tych plików przez wpisanie do nich ścieżki w pasku adresu... Z tego co gdzieś czytałem to można było coś takiego zrobić.. ja myślałem o htaccess'ie i pytałem o tą możliwość, jednak to nie ta opcja z filesmatch


--------------------
Przypomnij o "+", jeśli mi pomogłeś a nie zapunktowałem :P
Go to the top of the page
+Quote Post
kilas88
post 2.08.2010, 13:39:16
Post #4





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

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


Toć regułka jest dobrze napisana:

Cytat
<FilesMatch "\.(mp3|jpg)$">
order allow,deny
deny from all
</FilesMatch>


W ten sposób blokujesz możliwość otwierania plików mp3 i jpg bezpośrednio w oknie przeglądarki. Następnie robisz jak Ci polecił Pilsener:

Kod
$img = file_get_contents($path_do_twojego_imga);
header('Content-Type: image/jpeg');
echo $img;


Co więc nie działa?
Go to the top of the page
+Quote Post
ReBeLs513
post 2.08.2010, 15:01:24
Post #5





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

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


to, że specjalnie piszę w przedszkolu i po wpisaniu tej reguły nie wiedziałem co dalej..

zresztą mam taki odnośnik: <a href="java script:play(Puedes-ver-pero-no-tocar.mp3');">Puedes ver</a>- co z tym zrobić? // sorkam ale w htaccess jestem dopiero od dwóch dni


--------------------
Przypomnij o "+", jeśli mi pomogłeś a nie zapunktowałem :P
Go to the top of the page
+Quote Post
kilas88
post 2.08.2010, 15:09:42
Post #6





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

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


Cytat(ReBeLs513 @ 2.08.2010, 16:01:24 ) *
to, że specjalnie piszę w przedszkolu i po wpisaniu tej reguły nie wiedziałem co dalej..

zresztą mam taki odnośnik: <a href="java script:play(Puedes-ver-pero-no-tocar.mp3');">Puedes ver</a>- co z tym zrobić? // sorkam ale w htaccess jestem dopiero od dwóch dni

Nie da rady w ten sposób. Jak na moje to musiałbyś wysłać requesta AJAX-em do skryptu PHP, który by wykonał wcześniej wspomniane operacje pobrania pliku, po czym odesłał odpowiedź do klienta (przeglądarki) i dopiero wtedy odtworzył muzykę. Być może istnieje lepszy sposób, ale go nie znam.

Na Twoim miejscu jednak odblokowałbym wyświetlanie plików mp3 i playera muzyki dał we flashu (na prawidłową obsługę znacznika audio we wszystkich przeglądarkach trzeba jeszcze trochę poczekać). Dzięki temu, że adres do plików mp3 będzie przechodził przez flasha to nikt nie pozna adresu (przynajmniej nie przez proste zajrzenie w źródło skryptu).
Go to the top of the page
+Quote Post
zelu
post 2.08.2010, 15:10:30
Post #7





Grupa: Zarejestrowani
Postów: 229
Pomógł: 34
Dołączył: 7.12.2008
Skąd: Poznań

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


Cały czas wracamy do początku... Chodzi o to, że zamiast odwoływać się bezpośrednio do plików w <img> czy tak jak teraz w JS powinieneś odwoływać się do skryptu PHP, który generuje Ci żądaną rzecz (czy to obrazek czy mp3). Tak więc w swoim JS odnieś się również do skryptu PHP zamiast do pliku mp3.


Pozdro
Go to the top of the page
+Quote Post
ReBeLs513
post 3.08.2010, 07:53:58
Post #8





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

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


no dobra... a jak zrobię przekierowanie, że, jeśli ktoś wpisze adres pliku z takim rozszerzeniem to idzie sobie na stronę główną... Będę miał taki sam błąd na stronie, jak przy filesMatch? // Wiem, kombinuję, jak się da haha.gif


--------------------
Przypomnij o "+", jeśli mi pomogłeś a nie zapunktowałem :P
Go to the top of the page
+Quote Post
kilas88
post 3.08.2010, 10:29:21
Post #9





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

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


Cytat(ReBeLs513 @ 3.08.2010, 08:53:58 ) *
no dobra... a jak zrobię przekierowanie, że, jeśli ktoś wpisze adres pliku z takim rozszerzeniem to idzie sobie na stronę główną... Będę miał taki sam błąd na stronie, jak przy filesMatch? // Wiem, kombinuję, jak się da haha.gif

Tak, będzie ten sam błąd (JavaScript operuje na tej samej przeglądarce co Ty).
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 Wersja Lo-Fi Aktualny czas: 26.06.2025 - 05:44