АРМАДА
Защита от хотлинка (hotlinks) с помощью .htaccess
Новая тема Написать ответ

No
я здесь ельцин
Зарегистрирован: 01.08.2005
Сообщений: 3746
Обратиться по нику
# Добавлено:Пт Янв 27, 2006 5:49 amДобавить в избранноеОтветить с цитатой
Защита от хотлинка (hotlinks) с помощью .htaccess


Итак. Что такое хотлинк.
Представьте себе ситуацию: хитрожопый владелец другого сайта не хочет платить лишние баксы своему хостеру и желает сэкономить деньги на бендвиче. Он в буквальном смысле привязывается к одному или нескольким изображениям или мультимедийным файлам (видео, музыка, етц ) и помещает их на свою страницу. Грубо говоря, хитрожопый овнер использует ваш контент на своем сайте, загружая его со своего. По сути дела хотлинк является кражей интеллектуальной собственности (пафосно звучит Smile ), причем вы еще оплачиваете трафик другого сайта.

Как защитится от таких хитрожопых владельцев? Допустим ваш сайт www.thehun.net (уже нехуево Smile )

Пропишите нижеследующие строки в файле .htaccess на своем сервере. Таким способом защитимся от хотлинка и средиректим хотлинкующих нас куда-нибудь нахер на файл nahui.html

Код:
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://thehun.net.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.thehun.net.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://thehun.net:80.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.thehun.net:80.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://4.78.23.246.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://4.78.23.246:80.*$ [NC]
RewriteRule .*[Jj][Pp][Gg]$|.*[Gg][Ii][Ff]$ http://www.thehun.net/nahui.html



Эти цифры - 4.78.23.246 - IP вашего сайта. Т.е. на сайт можно попасть тремя способами: набрав thehun.net, набрав www.thehun.net и набрав, если так удобней Smile, в браузере http://4.78.23.246 (специально хана пинговал, блять, для реалистичности картины)

В файлике nahui.html можно написать что угодно - повесить консоли, дайлер, ну и просто по-человечески послать хотлинкующих вас нахуй.

Чтобы предотвратить хотлинк со всех сторонних доменов, и показать им только одну картинку (такая необходимость может возникнуть) напишите в .htaccess следующее:

Код:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?thehun.net\.com/ [NC
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpe?g|gif|bmp|png)$ images/nohotlink.jpg [L]



Файл nohotlink.jpg, лежащий в папке images/ и будет там самая единственная картинка, которую мы покажем.

Чтобы защитится от хотлинка только от некоторых определенных доменов пропишите в .htaccess следующее:

Код:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www\.)?badsite\.net/ [NC,OR
RewriteCond %{HTTP_REFERER} ^http://(www\.)?badsite\.com/ [NC
RewriteRule \.(jpe?g|gif|bmp|png)$ - [F]



Будет возникать ошибочка 403 forbidden. Советую кстати заранее позаботится об обработке ошибок. Пишем в .htaccess следующее

Код:
ErrorDocument 404 http://www.thehun.net/nahui.html
ErrorDocument 403 http://www.thehun.net/nahui.html
ErrorDocument 500 http://www.thehun.net/nahui.html



Это перенаправит все запросы к вашим картинкам на “consolehell.html”, за исключением тех, которые пришли с *yourdomain.com. Чтобы проверить эту установку вы можете пойти на Hotlinking.com и ввести урл картинки, которая теперь у вас под htaccess. Если картинки не увидите, значит все в порядке.
А вот так можно перенаправить все запросы к картинкам на http://www.thehun.net/nahui.html, за исключение только тех, которые идут с вашего собственного домена thehun.net

Код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://([a-z0-9-]+.)*yourdomain.com(:80)?(/.*)? [NC]
RewriteRule .*[Jj][Pp][Gg]$|.*[Gg][Ii][Ff]$ http://www.thehun.net/nahui.html [L,R]



Вообщем соблюдайте вышеперечисленные предписания. Помните, не предотвратив хотлинк, можно очень серьезно переплатить своему хостеру. Smile


(с) No

Rabbit
Кролики - это не только ценный мех
Зарегистрирован: 01.08.2005
Сообщений: 19787
Star (Сумма: 1)
Обратиться по нику
# Добавлено:Пт Фев 03, 2006 11:34 pmОтветить с цитатой
No, спасибо, нужная вещь - эта защита...
Новое. Прибыльное. Скоро!

kapon
V.I.P.
Зарегистрирован: 31.12.2005
Сообщений: 1989
Обратиться по нику
# Добавлено:Сб Фев 04, 2006 3:12 amОтветить с цитатой
полезная вешчьSmile) Wink
Гость попробуй McColo - хостинг. Надежный партнер в серьезных проектах. ICQ 477771 и 407737

Andrej
Свой
Зарегистрирован: 05.07.2006
Сообщений: 3
Обратиться по нику
# Добавлено:Ср Июл 05, 2006 7:35 pmОтветить с цитатой
No писал(а):

А вот так можно перенаправить все запросы к картинкам на http://www.thehun.net/nahui.html, за исключение только тех, которые идут с вашего собственного домена thehun.net

Код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://([a-z0-9-]+.)*yourdomain.com(:80)?(/.*)? [NC]
RewriteRule .*[Jj][Pp][Gg]$|.*[Gg][Ii][Ff]$ http://www.thehun.net/nahui.html [L,R]





А как можно перенаправить все запросы к видео (mpg,mpeg,wmv)?

No
я здесь ельцин
Зарегистрирован: 01.08.2005
Сообщений: 3746
Обратиться по нику
# Добавлено:Чт Июл 13, 2006 2:43 amОтветить с цитатой
Цитата:
А как можно перенаправить все запросы к видео (mpg,mpeg,wmv)?


Код:
RewriteRule \.(jpe?g|gif|bmp|png)$ - [F]

вместо картинок (расширения jpg, gif и т.д.), пропиши расширения требуемых видео файлов

Germes
V.I.P.
Зарегистрирован: 13.07.2006
Сообщений: 3054
Обратиться по нику
# Добавлено:Чт Июл 13, 2006 11:26 pmОтветить с цитатой
А вот примочка для ленивых хттп://www.htaccesstools.com/hotlink-protection/. Есть кроме этого еще кое-какие полезные фишки.
3а нас наука. Анархия, батенька, не игрушка...
-Почему у тебя синяк под глазом? -А пусть не лезут.

Mr.UFO
Профессионал
Зарегистрирован: 13.08.2006
Сообщений: 513
Обратиться по нику
# Добавлено:Вс Сен 10, 2006 11:45 pmОтветить с цитатой
А если я сам тащу с других сайтов картинки, непохерит ли такая хитрая конструкция их?
Всем пока :)

Germes
V.I.P.
Зарегистрирован: 13.07.2006
Сообщений: 3054
Обратиться по нику
# Добавлено:Пн Сен 11, 2006 12:06 amОтветить с цитатой
Если ты тащишь со своих ресурсов, то их можно прописать, и сможешь тащить как и прежде. Если с чужих то сам понимаешь.
3а нас наука. Анархия, батенька, не игрушка...
-Почему у тебя синяк под глазом? -А пусть не лезут.

CountZero
Профессионал
Зарегистрирован: 04.01.2006
Сообщений: 541
Обратиться по нику
# Добавлено:Пн Сен 11, 2006 12:08 amОтветить с цитатой
похерит, если неправильно тащишь...
Профессиональная покерная школа

Andrej
Свой
Зарегистрирован: 05.07.2006
Сообщений: 3
Обратиться по нику
# Добавлено:Пн Сен 11, 2006 1:09 amОтветить с цитатой
Мой совет всем новичкам... с проблемами антихотлинка и .htaccess лучше обращаться к админу сервера.... потому что любая ошибка может убить сайт, особенно если это сидж.

У меня так и произошло, прописал в .htaccess антихотлинк (htaccesstools.com) .. потом начал сидж раскручивать, дошёл до 45к ... и сервер завис - оперативной памяти не хватило.

Shout :D

Germes
V.I.P.
Зарегистрирован: 13.07.2006
Сообщений: 3054
Обратиться по нику
# Добавлено:Пн Сен 11, 2006 2:12 amОтветить с цитатой
чегож ты там такого прописал то?
3а нас наука. Анархия, батенька, не игрушка...
-Почему у тебя синяк под глазом? -А пусть не лезут.

Andrej
Свой
Зарегистрирован: 05.07.2006
Сообщений: 3
Обратиться по нику
# Добавлено:Пн Сен 11, 2006 3:12 amОтветить с цитатой
Примерно вот так:
Цитата:

ErrorDocument 401 http://www.domain.net/
ErrorDocument 403 http://www.domain.net/
ErrorDocument 404 http://www.domain.net/
ErrorDocument 500 http://www.domain.net/
Options -Indexes
AddHandler server-parsed .html
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.us [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.us [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.biz [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.us [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|mpeg|mpg|wmv)$ - [NC,F,L]




В моем случае виноват сапорт который вместо того чтоб отключить мне htaccess и решить проблему, начал мне предлогать добавить 4гб памяти Smile.

p.s. Хостинг поменял... в .htaccess больше не лезу.
Новая тема Написать ответ    ГЛАВНАЯ ~ ПОЛЕЗНЫЕ СТАТЬИ

Перейти:  





Генеральный спонсор



Партнеры