@gomer1726

Как НЕ дать пользователям скачать изображения сайта?

Мне важно чтобы люди не могли сохранять или скачивать изображения которые будут на сайте.
Я буду использовать их обращаясь к ним. Но вот как защитить это возможно ли?
Дайте ссылки
  • Вопрос задан
  • 3953 просмотра
Пригласить эксперта
Ответы на вопрос 7
longclaps
@longclaps
Не дадим.
Вдруг ты скачаешь.
Ответ написан
Комментировать
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
Все, что попало в браузер уже на стороне клиента. Хоть видео, хоть изображение(из кэша можно достать).
Защита - водяной знак и только ;)
Все остальное только для тех, кто не понимает.
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
не выкладывать на сайт
Ответ написан
Комментировать
@archelon
можно усложнить скачивание.
например,
- пускать изображение фоном;
- ставить поверх картинки прозрачный слой;
- запретить вызов контекстного меню.
но полностью запретить скачивание не получится.
Ответ написан
Комментировать
kumaxim
@kumaxim
Web-программист
Самый простой способ - не показывать Ваше супер ценное изображение кому-либо вообще. В любом другом случае человек его сможет скачать(читать как "достать из кэша своего браузера").
Для того чтобы хоть как-то защитить картинки на сайта можете использовать один из спосбов:
  • Наложить водяной знак - легко реализуемо, см. либу image magic
  • Прятать картинку в CSS через background-image
  • Загружать картинку через Angular-директиву
  • Резать картинку на фрагменты 5 х 5 пикселей, собирая ее потом сеткой
  • Смотреть user-agent клиента и, если он пустой или не валидный(какой-то бред, робот, не из списка), отдавать 404 ошибку либо другую картинку, аля "Это изображенние украли с сайта lallalala.com
  • Аналогично пункту выше, только смотрим теперь предварительно установленные пользователю cookie

Я когда-то реализовывал связку из 3 + 4 способа. У моего клиента был сайт, который в качестве донора постоянно использовали "нехорошие люди". Разумеется был автоматический парсинг контента. Роботы выдергивали ссылки на картинки и использовали их у себя. Трафик у клиента был бешеный, дисковая подсистема сервера это дело не вывозила, из-за чего и были тормоза. Результат такой - 50% парсить его перестали от слова "вообще", 20% адаптировали код под написанную защиту, 30% - банально забили(парсили с битыми ссылками/кривыми картинками), на сколько я понял. Цифры получены на основе моих наблюдений в течении 3-х месяцев после внедрения.

Этот случай был где-то в 2011 или 2012. Если бы эта же задача мне пришла в 2017, я бы просто наложил на картинки водяные знаки и подключил бы CloudFront от AWS, на чем бы все и закончилось, но в те годы я был юн и неопытен...
Ответ написан
Комментировать
Akdmeh
@Akdmeh
PHP, Yii2, Music
Есть вариант, который может помешать скачать. Нужно использовать изображение как background-image в CSS в определенном слое:
htmlbook.ru/css/background-image
При этом нужно всегда четко знать размер изображения и указать его с помощью width/height тега, который вы используете как контейнер для изображения.
Но это защитит только от самых необразованных. Существуют плагины, которые позволяют скачивать картинки, а также можно открыть исходный код или "проинспектировать элемент". Ну или в крайнем случае Print Screen.
Короче, если пользователь увидит картинку - он всегда ее может скопировать и 100% защиты не существует, есть только попытка сделать небольшое неудобство для тех, кто ничего не понимает в сайтах.
Ответ написан
Комментировать
NeiroNx
@NeiroNx
Программист
Если ваши изображения такие ценнные, так зачем их кому либо показывать? По факту хватит заметного водяного знака и низкого разрешения. А все остальное можно обойти.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы