Назад | Перейти на главную страницу

прокси-кеш nginx потоковая передача mp4

Извините за мой вопрос, схема такая: есть восходящий поток, который является сервером IIS, на котором размещаются видеофайлы. мой nginx - это прокси-кеширующий сервер, мне нужно кешировать файл mp4, когда клиент начинает его воспроизводить в своем браузере, и отправлять / передавать его клиенту. если индекс файла mp4 находится в начале файла, то все в порядке, он работает хорошо. но если индекс файла находится в конце файла mp4, тогда у меня проблемы, я ищу кеш и вижу, что кеширование nginx из восходящего файла до конца и удаление его, а для следующего раздела файла он снова кэширует его, полностью отправляя раздел и удалить кеш ... Я не понимаю почему :( также он отправляет много заголовков ошибок как неправильную длину, в этом случае игрок останавливается :(

(Определения кэша RAM)

1 уровень определения сервера

server {
    listen        front.network;
     server_name   .mybox.com;

    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

    max_ranges 1024;

    proxy_cache ssd;
    proxy_cache_valid 200 600s;
    proxy_cache_lock on;
    proxy_read_timeout 10m;
    proxy_send_timeout 10m;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    add_header Accept-Ranges bytes;
    proxy_cache_min_uses 1;
    proxy_force_ranges on;

    proxy_cache_key   $uri$is_args$args;

    # Immediately forward requests to the origin if we are filling the cache
    proxy_cache_lock_timeout 0s;

    # Set the 'age' to a value larger than the expected fill time
    proxy_cache_lock_age 200s;
    proxy_cache_valid 200 206 301 302 48h ;

    proxy_cache_use_stale updating;

    location /5 {
        proxy_set_header Host $redirect_host;
        proxy_pass http://$redirect_upstream;
    }
}