nginx предотвращение хотлинкинга
Я знаю, что это довольно простой вопрос, но, хотя у меня не было проблем с предотвращением хотлинкинга файлов изображений, я не могу понять, как я не могу защитить видеофайлы mp4…
я просто попытался указать mp4 рядом с jpg (это два типа файлов, которые мне нужно защищать), но так как он работает для jpg, mp4 ничего не делает!
Любая идея?
location ~* \.(jpg|mp4)$ {
valid_referers none blocked www.mysite.com mysite.com;
if ($invalid_referer) { return 403; }
}
1 ответ
К сожалению, какой бы метод вы ни использовали, чтобы "защитить" прогрессивную загрузку, он все равно может быть сорван.
Эта проблема заключается в том, что видео указано как потоковое содержимое.
На самом деле, многие инструменты для загрузки видео очень мощные, поэтому очень сложно защитить видеофайлы от загрузки.
Обычно существует три шага:
- ПОЛУЧИТЬ
/path/to/file
- вернуть HTML-форму с помощью capcha или другого метода, чтобы избежать автоматического - СООБЩЕНИЕ
/path/to/file
- вернуть HTTP-перенаправление, используя безопасный хеш - ПОЛУЧИТЬ
/path/to/file?hash=xxx
- проверить хеш
Вы можете усовершенствовать этот метод, реализовав потоковый модуль H264 для nginx.