1. Начало
  2. Други
  3. Сигурност
  4. Защита от директни връзки към ресурсите в сайта – HotLink Защита

Защита от директни връзки към ресурсите в сайта – HotLink Защита

HotLink означава директна връзка от един сайт към ресурс на друг сайт. Ресурсът може да е изображение или друг тип файл. Например ако даден сайт постави връзка към картинка от вашия сайт в таг <img>, тази връзка се нарича hotlink (директна връзка). Този тип връзки, намиращи се на външни сайтове, към ресурси от вашия сайт, също така изразходват трафик.

HotLink защитата се използва за защита от такъв тип връзки към ресурсите на сайта ви.

HotLink защитата се активира през cPanel » HotLink Защита » Enable.

HotLink защитата ще се активира за всички домейни, които са добавени в хостинг акаунта.

HotLink защитата се прилага с ползването на правила за достъп и ограничение в .htaccess файла.

След активиране на HotLink, в .htacess файла на всеки домейн, добавен в cPanel, ще бъде добавено съдържание например:

# този ред се поставя само когато е активиран директния достъп до ресурса
# (достъпът до директния линк в адресната лента на браузъра)
RewriteCond %{HTTP_REFERER} !^$
# следващите 4 реда показват кои домейни ще са разрешени за достъп до защитените ресурси
RewriteCond %{HTTP_REFERER} !^http://mysuperwp.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://mysuperwp.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://mydomainincpanel.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://mydomainincpanel.com$ [NC]
# когато е активирано пренасочването, последният ред ще изглежда така:
# RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ https://redirecttarget.com [R,NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]

Можете да редактирате HotLink защитата на даден сайт директно в .htaccess файла му, като редактирате правилата.

URL адреси, от които е разрешен достъпа

Този списък се генерира автоматично при достъп до меню HotLink. Това са всички домейни, които са добавени в cPanel. Всички домейни ще бъдат добавени в списъка с http:// и https://.

След като добавите нов домейн в cPanel може да посетите меню HotLink и да обновите защитата, която вече ще включва и новия домейн в списъка, като кликнете на Submit. При кликване на Submit правилата във всички .htaccess файлове ще бъдат обновени. В случай че сте извършвали промени по правилата на HotLink защитата в даден .htaccess файл, след Submit тези промени ще бъдат загубени (презаписани).

Блокиране на достъпa до следните разширения

Това са ресурсите, които ще са защитени от HotLink. Освен автоматично зададените, в случай че се налага, можете да добавите и други типове ресурси като csv,doc,ico и т.н.

Разрешаване на директни заявки

Активирайте тази опция в случай че искате да разрешите директния достъп до ресурсите, например при изписване на адреса им в уеб браузъра като https://mysupersite.com/directory/image.jpg .

URL адрес, към който се пренасочва:

По подразбиране при опит за достъп до защитен ресурс, заявката ще получи статус код 403 (Forbidden). Вместо този статус код, когато активирате пренасочване към адрес, заявката за ресурса ще получи код 302 (Found).

Активиране и фина настройка на HotLink защитата може да се извърши чрез директна редакция на .htaccess файла на сайта.

Редакция на .htaccess файла може да се извърши директно през cPanel » Файлов мениджър. Винаги правете копие на файла, преди да го редактирате директно.

Можете да активирате HotLink защита за определена директория например public_html/directory/media и нейните поддиректории, като добавите следните пренаписващи правила в .htaccess файла, намиращ се в същата тази директория public_html/directory/media:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
# https? - хваща двата варианта на протокола http и https
# ([a-z0-9]+\.)? - хваща всички поддомейни към домейна
# jpe?g? - хваща различните вариации на това разширение, jpg, jpeg и други
RewriteCond %{HTTP_REFERER} !^https?://([a-z0-9]+\.)?mysuperwp\. [NC]
# mysuperwp, mydomainincpanel заменете с домейните, които
# ще са разрешени за достъп до защитените ресурси
RewriteCond %{HTTP_REFERER} !^https?://([a-z0-9]+\.)?mydomainincpanel\. [NC]
# добавете или премахнете разширения
RewriteRule \.(jpe?g?|gif|png|bmp|tiff?|pic|mp3|doc|xls)$ - [F,NC,L]

Възможно е да отговаряте на HotLink заявки с изображение. Когато някой направи директна връзка към ресурс от сайта ви например image.jpg, вместо HTTP статус код 403 Forbbiden, може да получи друго изображение например hotlink-not-allowed.png. На изображението може да се постави текст например "HotLinking (директни връзки) към ресурсите на сайт mysupersite.com се предоставят след допитване до администратор!".

За да пренасочите HotLink заявките към картинка, правилата може да изглеждат по следния начин:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://([a-z0-9]+\.)?mysuperwp\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://([a-z0-9]+\.)?mydomainincpanel\. [NC]
RewriteCond %{REQUEST_URI} !^/hotlink-not-allowed\.png$ [NC]
# редактирайте пътя до и името на картинката
RewriteRule \.(gif|jpe?g?|png)$ https://mysupersite.com/hotlink-not-allowed.png [R,NC,L]

По подразбиране .htaccess правилата са валидни и се прилагат за директорията, в която се намира файла, както и за всички поддиректории. Понякога може да е нужно в поддиректория да не е активна HotLink защитата. Има няколко начина за деактивирането на защитата.

Първият начин е да се извади поддиректорията и да се премести в горна директория, в която .htaccess файла с HotLink защитата няма да има влияние.

Другият вариант е да се поставят отменящи правила в .htaccess файл в поддиректорията:

# деактивиране на HotLink защитата
RewriteEngine on
RewriteRule ^.*$ -

или

# деактивиране на RewriteEngine,
# което деактивира изпълнението на правилата от горния .htaccess файл
RewriteEngine off
Обновена: 02.03.2018

Беше ли Ви полезна тази статия?

Вижте още