Рассмотрим на примере, без привязки к языку программирования:
Есть урл
https://res.cloudinary.com/demo/video/upload/dog.mp4
Есть файл /var/www/files/dog.mp4
Есть nginx который обрабатывает запросы клиента
Есть некий бэкенд код
В nginx
1. Создать internal location в nginx, например:
location /video/ {
internal;
root /var/www/files/;
}
Инструкция internal говорит о том, что этот локейшн будет обрабатывать только запросы с бэкенда.
В коде
1. Роутером отлавливаете запрос на урл
https://res.cloudinary.com/demo/video/upload/dog.mp4
2. Обрабатываете(в вашем случае сохраняете статистику, решаете отдавать контент пользователю или нет)
3. Если файл нужно отдать, добавляете в заголовок
X-Accel-Redirect https://res.cloudinary.com/video/dog.mp4
После этого nginx отдает клиенту файл /var/www/files/dog.mp4
А если обратиться напрямую к урл вида
https://res.cloudinary.com/video/dog.mp4, получим 403 ошибку.