Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zabezpieczenie pliku przed odczytem przez url
matjab
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 6.05.2009

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


Witam.
Zdaję sobie sprawę, że podobne tematy pojawiły się już na forum,
choćby tu:
http://forum.php.pl/index.php?showtopic=10...&pid=541315
albo tu:
http://forum.php.pl/index.php?showtopic=93...rt=#entry471123
Ale prawdę mówiąc niewiele z tego rozumiem, a nie wierzę, żeby było to aż tak skomplikowane.
Otóż sprawa przedstawia się w następujący sposób:
Chciałbym zabezpieczyć plik graficzny, aby nie można go było wyświetlić po wpisaniu urla do niego, jednocześnie oczywiście chciałbym mieć do niego dostęp z poziomu skryptu.
I to właściwie tyle. Próbowałem już wpisu do .htaccess typu: Deny from All, ale to (choć rozwiązuje sprawę urla) uniemożliwia mi wyświetlanie tej grafiki w szablonach.
Any Ideas? Please (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
matjab
post
Post #2





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 6.05.2009

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


czyli sprawdzać, czy rządanie ściągnięcia pliku pochodzi z mojego skryptu? A dokładnie strony, z której ten skryp wywołuje..
Bo dokładnie to plik ten ma być wyświetlany w pdf-ie, więc mogę w ten sposób sprawdzić, czy rządanie pochodzi ze strony na której np. klikam na button generuj pdf (który wywołuje skrypt korzystający z obrazka)..

Próbuje i niestety nie działa tak jak powinno.
wykasowałem linie:
RewriteCond %{HTTP_REFERER} !^$
ponieważ dotyczy ona pustego adresu ( a taki też chcę zablokować)
i zamiast ostatniej linii dałem:
RewriteRule .*\.(jpe?g|gif|bmp|png)$ - [F]
aby wymusić wyświelenie strony błędu 403
Być może źle podaje ścieżkę w drugiej linijce:
jak rozumiem powinna zostać zapisana w taki sposób:
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?domena\.pl/nazwa_katalogu_na_serwerze/nazwa_pliku\.php [NC]
adres wygląda tak, ponieważ chcę umożliwić dostęp tylko z niego
co robie nie tak? (IMG:style_emoticons/default/sciana.gif)

Ok działa!
Zamieszczam działający kod .htaccess:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?domena\.pl [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ - [F]

Skrypt umożliwi dostęp tylko z adresu domena.pl, w każdym innym przypadku (łącznie z pustym adresem HTTP_REFERER) wyświetli się błąd serwera 403 (dostęp zabroniony)

użytkownikowi magra dziękuje - to był dobry trop (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował matjab 21.08.2009, 08:56:25
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 8.08.2026 - 07:47