Скрытие ключа потока из представления источника и веб-консоли

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

введите описание изображения здесь

Единственный вариант, о котором я мог подумать, — это создание собственной страницы 404 с PHP. Строка запроса будет уникальной для каждого пользователя, но не будет содержать ключ потока пользователя и будет перенаправлена ​​в файл m3u8:

header("Location: /live/source/" . $stream_key . "/index.m3u8");

Похоже, хорошая идея. Вы больше не можете видеть ключ потока при просмотре источника, но я все равно получаю тот же вывод в консоли, как показано выше.

Я использую nGinx с RTMP и HLS и PHP для бэкэнда. Я попытался использовать hls.min.js и VideoJS для видеоплееров и получить те же результаты. Пожалуйста, дайте мне знать, если вы можете придумать какие-либо другие варианты. Если есть способ сделать это строго с помощью файла конфигурации nGinx, я бы попробовал это на 100%. Содержимое моего файла nginx.conf также ниже. Заранее спасибо!

user root;
worker_processes 2;

events {
worker_connections 2048;
multi_accept on;
}

http {
include mime.types;

server {
listen 80;
listen 443 ssl;

server_name live.xxxxxxxx.tv;
root /home/ubuntu/xxxxxxxx;

ssl_certificate /home/ubuntu/xxxxxxxx/ssl/xxxxxxxx.crt;
ssl_certificate_key /home/ubuntu/xxxxxxxx/ssl/server.key;

location / {
add_header Access-Control-Allow-Origin *;

access_log off;
log_not_found off;
}

location ~ \.php$ {
add_header Access-Control-Allow-Origin *;

try_files $uri =404;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
fastcgi_intercept_errors on;
}

error_page 404 = /404.php;
}
}

rtmp {
server {
listen 1935;
buflen 3s;
chunk_size 4096;
max_message 2M;
max_streams 32;
notify_update_timeout 1m;

# on_publish http://api.xxxxxxxx.tv/stream/start;
# on_publish_done http://api.xxxxxxxx.tv/stream/end;

application go {
live on;

access_log off;

hls on;
hls_type live;
hls_fragment 3s;
hls_playlist_length 15s;
hls_nested on;
hls_path /home/ubuntu/xxxxxxxx/live/source;

record all;
record_unique off;
record_interval 5m;
record_suffix .mp4;
record_path /home/ubuntu/xxxxxxxx/archive;

exec_push ffmpeg -i rtmp://live.xxxxxxxx.tv/go/$name -c:v libx264 -c:a copy -s 480x320 rtmp://localhost/live/320p/$name;
}
}
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]