Компьютерная документация и статьи о Windows. Оптимизация Windows.

Поиск

  Здравствуйте  [ Новый пользователь ] Главная  .  Статьи по темам  .  Скачать документацию  .  Личный кабинет  .  Добавить статью  .  Toп 10  .  Карта сайта  

  Навигация

    Главная
    Темы новостей
    Топ 10
    Архив новостей
    Рассылка новостей
    Каталог файлов
    Карта сайта
    Каталог ссылок
    Добавить статью
   Личный кабинет
    Пользователи
    Поиск
    Написать нам
    Тест скорости
    Конструктор
    Интересные книги
    Форум
    Это интересно
    RSS канал


  Наши темы
Windows 7
Windows Vista
Windows XP
Настройка Windows
Реестр Windows
Восстановление системы
MS-DOS
BIOS
Интернет
Microsoft Office
Сетевые настройки
Обработка видео
Вебмастеру
Разное о Windows
Обзор софта

  Рекомендуем

INAttack.RU :: Архив документации для хакера

СЕТЕВАЯ ПЕРЕГРУЗКА

Бесплатный каталог драйверов и
прошивок


  Подписка на рассылку
Ваш E-mail:

Тип подписки:

Формат подписки:


Реклама в интернет:::Все Кулички

Защита от hotlinking

Разместил 05/11/2007 от Vivaldis

Вебмастеру

У меня появилась очень полезная для некоторых вебмастеров информация о .htaccess... Речь идет о том, чтобы ограничить использование картинок с вашего сервера нехорошими людьми. Зачем это надо? А надо это потому, что некоторые хостинги требуют оплаты за трафик.

Представьте себе ситуацию, когда один добрый, хороший и приятный во всех отношениях человек разместил на своем сайте коллекцию картинок - кадров из какого-нибудь популярного фильма. Картинки пользуются большой популярностью, народ активно смотрит их. Это, естественно, выливается в неплохой исходящий трафик с сервера. Для примера - этот сайт порождает трафика примерно на 5-6 Гб в месяц, и это при почти полном отсутствии картинок! Сайт же, ориентированный на картинки (ну не надо меня обвинять в поддержке xxx сайтов...), способен порождать трафик сотнями Гб. в месяц. И за все это надо платить (например, по 2.5 доллара за 1 Гб).



И вдруг этот чудесный, замечательный альтруист замечает, что трафик увеличился вдвое, при той же посещаемости. Следовательно, платить надо в два раза больше! Почему? Оказывается, какой-то крайне нехороший человек тоже сделал сайт с теми же картинками. Но, поскольку такие картинки в сети уже есть, нехороший человек решил заодно не тратить свой трафик и использовать картинки с хоста хорошего человека. И правда, тег img вовсе не запрещает использование картинок с других хостов, знай пиши полный путь. И радуется нехороший человек! Напакостил и счастлив.

Что же делать хорошему человеку? Закрывать сайт? Нет! Великий защитник человечества - .htaccess - приходит на помощь! Можно, оказывается, сделать так, чтобы картинки можно было использовать только тому хосту, на котором они находятся. И сделать это можно даже несколькими способами - либо через функции apache, либо через mod_rewrite (модуль apache, занимающийся перенаправлением на другие страницы).

Сначала посмотрим, как это можно сделать через mod_rewrite. Для этого надо определить, откуда пришел посетитель - если со своих страниц, то пустить его к картинке. Иначе - послать далеко и надолго, а лучше всего на спонсора :) Делается это через переменную http_referer. Вот это надо приписать в .htaccess:

authuserfile /dev/null
authgroupfile /dev/null
rewriteengine on
rewritecond %{http_referer} !^http://www.webhowto.ru/
rewritecond %{http_referer} !^http://webhowto.ru/
rewritecond %{http_referer} !>http://www.webhowto.ru:80 [nc]
rewritecond %{http_referer} !>http://webhowto.ru:80 [nc]
rewriterule /* http://www.yoursponsor.com/click.cgi [r,l]

А теперь представьте себе, как работает mod_rewrite. Вся проблема в том, что обработка запроса сервером происходит в несколько этапов. Вкратце: сначала apache обрабатывает url, а затем ставит им в соответствие файлы. Беда в том, что обработка .htaccess происходит уже после обработки url, поэтому чтобы обработать инструкции mod_rewrite корректно, apache делает два раза одно и то же. Естественно, это сильно тормозит сервер.

Есть более удобное решение. В httpd.conf в секцию, относящуюся к папке, либо в .htaccess можно добавить инструкции серверу не отдавать картинки незнакомым клиентам. Это делается так:

setenvifnocase referer "^http://www.webhowto.ru" local_ref=1

order allow,deny
allow from env=local_ref

Ура! Работает! В смысле, не работает! :)

Остается добавить, что вы вполне можете точно так же сделать защиту не только для jpg и gif, но и для любых других файлов, см. документацию по apache на предмет синтаксиса бокса filesmatch. Вот и все, на сэкономленные деньги купите себе халвы и наслаждайтесь

Автор статьи: Михаил Соловьёв
Сайт:webhowto.ru
 



Примечание: Агентство недвижимости предоставляет аренда жилья Москвы

|
 
  Логин
Логин

Пароль

Не зарегистрировались? Вы можете сделать это, нажав здесь. Когда Вы зарегистрируетесь, Вы получите полный доступ ко всем разделам сайта.

  Связанные ссылки
· Больше про Вебмастеру
· Новость от Vivaldis


Самая читаемая статья: Вебмастеру:
Коды ошибки http веб-сервера


  Рейтинг статьи
Средняя оценка: 3.5
Ответов: 2


Пожалуйста, проголосуйте за эту статью:

Отлично
Очень хорошо
Хорошо
Нормально
Плохо



  опции

 Напечатать текущую страницу  Напечатать текущую страницу

 Отправить статью другу  Отправить статью другу


Яндекс цитирования Rambler's Top100 Рассылка 'Собрание документации по Windows , программное обеспечение' Content.Mail.Ru Maillist.ru: Компьютерная документация по настройке Windows
PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
The Russian localization - project Rus-PhpNuke.com
Открытие страницы: 0.302 секунды и 20 запросов к базе данных