InfoPage.pl » Obrona przed podlinkowaniem zdjęć (hotlink images) za pomocą pliku .htaccess. » Moje porady dla ludzi z netu
   InfoPage - strona główna bloga InfoPage - Lista artykułów znajdująca się na moim blogu InfoPage - zmiana adresu mojego bloga InfoPage - zmiana layoutu mojego bloga Infopage - linki do zaprzyjaźnionych stron
top
Powiększ tekst:

Obrona przed podlinkowaniem zdjęć (hotlink images) za pomocą pliku .htaccess.

February 19th, 2009, 13:15 @ PHP, Pozycjonowanie, Strony www
0 votes

Kupując miejsce na serwerze należy się liczyć z wykorzystaniem jego transferu, jaki jest przydzielany miesięcznie. Taki hotlinking może “zjeść” Wasz transfer w ciągu tygodnia. Oczywiście nie tyczy się to serwerów, które mają transfer nieograniczony :) Niemniej jednak należy się bronić przed podlinkowaniem zawartości własnego serwisu. Choćby po to, aby zmniejszyć ruchu na stronie.


Dziwne to uczucie, gdy znajduje się swoje zdjęcia na innym serwisie, na dodatek podpisane przez kogoś innego, i co gorsze, podlinkowane z Twojej strony. Albo zdjęcia Waszych produktów, wykonane przez Was, a znajdujące się w sklepie konkurencji. Nie do pomyślenia.

Wystarczy zmodyfikować plik .htaccess dodając trzy linijki kodu i cały powyższy “wyimaginowany proceder” nie będzie mógł mieć miejsca!

Kod pliku “.htaccess” umieszczony w głównym katalogu strony:

RewriteEngine On
Options -Indexes
RewriteCond %{HTTP_REFERER} !^http://([-a-z0-9]+\.)?NazwaDomeny\.pl [NC]
RewriteRule ^(.*)\.(gif|jpe?g|png)$ /404.php?$1.$2 [NC,L]

Powyższy kod zezwala na przeglądanie Waszych zdjęć w obrębie domeny “NazwaDomeny.pl”, ale nie pozwala na podlinkowanie się z innej domeny. Dodatkowo kod zabrania wpisywania z palca ścieżki do konkretnego pliku w adresie przeglądarki.

Kod pliku “404.php” umieszczony w głównym katalogu strony:

<!DOCTYPE HTML PUBLIC ?-//IETF//DTD HTML 2.0//EN?>
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /<?php
if ($_SERVER[‘QUERY_STRING’]) :
echo $_SERVER[‘QUERY_STRING’];
endif;
?> was not found on this server.</p>
<p>Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.</p>
</body></html>

Kod strony 404.php będzie podmieniać stronę “Forbidden”“You don’t have permission to access /strona/obrazek.jpg on this server” na “Not Found” – “The requested URL /strona/obrazek.jpg was not found on this server”, aby zmylić osobę próbującą ręcznie znaleźć (wpisując w adres przeglądarki ścieżkę do zdjęcia) Wasze zdjęcia.

Proste zabezpieczenie zdjęć plikiem .htaccess do ściągnięcia tu.

Na mojej galerii włączyłem opcję blokującą hotlinking.



2 odpowiedzi do “Obrona przed podlinkowaniem zdjęć (hotlink images) za pomocą pliku .htaccess.”

  1. artur Says:

    witam
    proszę o informacje jak to zrobić w prestaschop.

  2. Kacek Says:

    W prestashop 1.6.1.1 działa.
    Po linii , u mnie znajduje się w 8 wierszu htaccessa, dodałem trzy linie: Options…, RewriteCond… oraz RewriteRule… takie, ja są podane powyżej. Zmieniłem tylko domenę: NazwaDomeny na moją 😉 Na koniec wgrałem na serwer z mojaą prestą plik: 404.php
    Dziękuję!!!

Zostaw komentarz:

Komentarze są moderowane, nie wysyłaj więc jednego komentarza kilka razy...