Nginx в качестве обратного прокси-сервера для сокрытия серверов происхождения HLS - PullRequest
0 голосов
/ 14 марта 2019

Я не профессионал или любитель nginx в этом вопросе, просто знаю, как много в Google, и мне нужна помощь в завершении обратного прокси.

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

У меня есть его для работы с TS, но я не могу на всю жизнь тренироваться, как заставить его работать с HLS, независимо от того, сколько я собираю пакетов. Он отлично тянет манифест, но в отличие от TS он не тянет сегменты с серверов-источников.

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

server {
listen 80;
server_name proxy_IP_here;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;

location ~ .(m3u8|mpd)$ {
proxy_pass backend_IP_for_Main;
proxy_intercept_errors on;
error_page 301 302 307 = @handle_redirects;
}

}
location / {
proxy_pass backend_IP_for_Main;
sub_filter 'dns_i_have_it_fildering_here' 'proxy_IP_here';
sub_filter_once off;
sub_filter_types text/javascript application/json;
proxy_intercept_errors on;
error_page 301 302 307 = @handle_redirects;
}
location @handle_redirects {
set $saved_redirect_location '$upstream_http_location';
proxy_pass $saved_redirect_location;
}
}

Если я удалю proxy_intercept_errors on; error_page 301 302 307 = @handle_redirects; что из блока местоположения .mm3u8 будет работать HLS, но он будет доставлен непосредственно исходным сервером конечному клиенту, а не через прокси.

Любая помощь с благодарностью.

Заранее спасибо.

...