मुझे hls स्ट्रीमिंग के लिए nginx config के साथ समस्या है। मैं कलतुरा नग्नेक्स वोड मॉड्यूल का उपयोग करता हूं और ngx_http_secure_link_module
धारा की सुरक्षा के लिए जोड़ने का प्रयास करता हूं । अजीब बात यह है कि अगर मैं सक्षम ngx_http_secure_link_module
करता हूं (नीचे लॉग्स) तो मेरे पास 404 त्रुटि है । मुझे लगता है कि यह अंत में index.m3u8 के साथ एक फ़ाइल नहीं मिल सकता है, लेकिन अगर मैं सुरक्षित लिंक ब्लॉक टिप्पणी यह ठीक काम करता है।
इसके अलावा मैंने location ~ \.m3u8$ {}
ब्लॉक के अंदर उपनाम जोड़ने की कोशिश की , लेकिन यह काम नहीं किया। मैं क्या गलत कर रहा हूं? मेरी धारा की रक्षा कैसे करें?
मेरी स्ट्रीम लिंक: https://stream.example.com/hls/c14de868-3130-426a-a0cc-7ff6590e9a1f/index.m3u8?md5=0eNJ3SpBd87NGFF6Hw_zMQ&expires=1609448340
मेरा NGINX कॉन्फ़िगरेशन:
server {
listen 9000;
server_name localhost;
# root /srv/static;
location ^~ /hls/ {
# the path to c14de868-3130-426a-a0cc-7ff6590e9a1f file
alias /srv/static/videos/1/;
# file with cors settings
include cors.conf;
vod hls;
# 1. Set secret variable
set $secret "s3cr3t";
# 2. Set secure link
secure_link $arg_md5,$arg_expires;
secure_link_md5 "$secure_link_expires $secret";
# if I comment this block everything works fine (but security)
location ~ \.m3u8$ {
if ($secure_link = "") { return 403; }
if ($secure_link = "0") { return 403; }
}
}
}
NGINX लॉग: