Как предотвратить горячую ссылку на файл из Internet Download Manager IDM

У меня возникла проблема с исправлением горячей ссылки или загрузки медиафайла с помощью IDM, я работаю над обслуживанием видеофайла с помощью PHP, и он работает нормально, но я заметил, что IDM, установленный на моем компьютере, смог добавить окно загрузки к видео, которое я играю с помощью jwplayer . Я изменил структуру кода и добавил htaccess, чтобы переписать ссылку, чтобы прямой доступ к файлу не отображался.

mysite.com/file.php?myvideo.flv -> mysite.com/api/file/JU78vhx5uh

Я смог реализовать это в JWPlayer, и он работает при работе с PHP, но тот же IDM извлекает мой видеофайл, я ищу другие средства, такие как htaccess, и он ниже

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]

RewriteCond %{HTTP_REFERER} !^$

RewriteRule .*\.(mp4|flv|mp4|mp3)$ /video/thieve.flv [L]

Это работает только для веб-браузеров и не останавливает программное обеспечение IDM. Я нашел еще один валидатор реферера PHP, который проверяет реферальную ссылку.

if (strpos($_SERVER['HTTP_REFERER'],'mysite.com')===0)

 {
    header("Location: whatever.php"};
 }else{
    header("Location: index.php");
 }

Примечание: я обнаружил, что IDM отправил эту информацию моему сценарию.

  1. АГЕНТ ПОЛЬЗОВАТЕЛЯ:Mozilla/4.0%20(compatible;%20MSIE%208.0;%20Windows%20NT%206.0;%20Trident/4.0)

  2. Http_referer:mysite.com/api/file/JU78vhx5uh (то же самое со страницей, на которой воспроизводится мое видео).

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


person femotizo    schedule 09.01.2013    source источник
comment
Серьезно, чувак, единственный способ не загрузить твое видео - это не показывать его, я бы потратил свое время на что-то более продуктивное...   -  person arraintxo    schedule 16.04.2013


Ответы (1)


В общем, единственный способ предотвратить загрузку ваших видео пользователями — это действительно транслировать их через сервер. «Эмуляция потоковой передачи» посредством показа уже предварительно загруженных видеокадров всегда будет так или иначе «взламываема», потому что, в конце концов, вам нужно, чтобы программное обеспечение проигрывателя знало адрес — который, конечно же, является полным .avi/.mp4/. что бы ни.

Есть довольно много потоковых серверов, также доступны некоторые с открытым исходным кодом. Хорошей отправной точкой может быть этот список. Для Linux Darwin может быть одним из лучших вариантов.

Как только вы действительно транслируете свой контент, только очень продвинутые пользователи смогут захватить ваш контент с помощью стримграбберов (я думаю, что есть даже серверы, на которых это не работает, например, решения для потоковой передачи Adobe).

person Martin Müller    schedule 12.04.2013
comment
Точно. Кроме того, я лично смог захватить каждый поток, который я смотрел, включая недавнюю экзотику Adobe :) - person wizzard0; 15.04.2013
comment
В большинстве случаев вам не нужно быть гуру хакеров, чтобы получить видео. Сервер потоковой передачи Darwin, который вы комментируете, - это просто сервер потоковой передачи RT (S) P, который может быть легко захвачен ffmpeg или VideoLAN. - person arraintxo; 16.04.2013
comment
@arraintxo правда, но я осмелюсь сказать, что это уже волшебство для 98% пользователей. С другой стороны, для большинства из них можно взять какой-нибудь дополнительный загрузчик видео Firefox и нажать «Загрузить». - person Martin Müller; 17.04.2013
comment
Кстати, использование реального потокового решения также экономит трафик. Псевдопотоковое видео по умолчанию будет загружено полностью, даже если пользователь приостановил его (Youtube недавно реализовал методы, чтобы остановить это), поток автоматически остановится через 4 или 5 секунд (это можно настроить на сервере). - person Martin Müller; 17.04.2013