Запретить скачивание картинок по прямым ссылкам

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем drawing4, 29 сен 2010.

  1. drawing4

    drawing4

    Регистр.:
    21 ноя 2008
    Сообщения:
    323
    Симпатии:
    37
    Вопрос такой. Есть магазин, в нем неск. тыс. картинок товаров. Так вот, нужно сделать так чтобы они были доступны для скрипта магазина, но если ты закачиваешь картинку извне вводя в браузер ссылку вида

    PHP:
    http://site.com/images/1.jpg
    тебя редиректило или на главную страницу, или просто выдавало ошибку вроде доступ запрещен, 404 или еще что-то подобное
     
  2. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    А как они по-твоему отображаются в броузере? если картинка отобразилась в броузере, она автоматически скачивается и сохраняется в папке с временными файлами у тебя на компьютере.
     
  3. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    drawing4 нравится это.
  4. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    Хотя реферер можно и подменить при желании, в рамках требований ТС ты прав. Антилича ему вполне хватит)
     
  5. drawing4

    drawing4

    Регистр.:
    21 ноя 2008
    Сообщения:
    323
    Симпатии:
    37
    Речь идет не о защите всего на уровне паранои, а банально закрыть доступ всем желающим, получать изображение с сервера. Генерируя страницу, качай на здоровье, а взять только саму картинку нельзя.

    Смысл, чтобы нельзя было использовать картинки с сервера, в своих целях, или скачивать при помощи curl или download менеджеров
     
  6. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    с подменой реферера курлом можно выкачать все твои картинки.
     
  7. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    да и download менеджеры давно подделывают реферер

    другое дело что не все в курсе что это такое, и что на него могут обращать внимание, и что софт может с этим работать
     
  8. drawing4

    drawing4

    Регистр.:
    21 ноя 2008
    Сообщения:
    323
    Симпатии:
    37
    Я понимаю что если захотеть то можно сделать, нужна ламерская защита просто. По принципу посмотрел, не работает, найду другой сайт, и возьму с него. Как-то так
     
  9. Nei

    Nei Nosce te ipsum

    Регистр.:
    5 сен 2009
    Сообщения:
    600
    Симпатии:
    468
    drawing4, вам же уже дали ссылку на решение.

    Вот вариант с ограничением доступа для определенных сайтов (он предпочтительней дабы не замарачиваться с определением поисковиков и не получить фильтр за клоакинг:(
    PHP:
    RewriteEngine On
    RewriteCond 
    %{HTTP_REFERER} ^http://(www\.)?zloylicher\.net/ [NC,OR]
    RewriteCond %{HTTP_REFERER} ^http://(www\.)?esheodin\.com/ [NC]
    RewriteRule \.(jpe?g|gif|png)$ - [F
     
  10. nagual

    nagual Постоялец

    Регистр.:
    17 фев 2009
    Сообщения:
    65
    Симпатии:
    3
    Простой антиличер для nginx