2015-10-27 73 views
0

我在nginx.conf 2名的位置我想給與.TS extention訪問只有當您通過.m3u8訪問否則將返回403集位置,如果在另一個位置

所以基本上http://xxx/hello.m3u8威爾授予您訪問內部播放.ts列表的權限。 但試圖像http://xxx/hello-123.ts那樣單獨訪問塊不起作用。 在一段時間內訪問緩存也可以。 這是我到目前爲止的代碼,將不勝感激。

location ~ \.m3u8 { 
    root /mnt/hls; 
    add_header Cache-Control no-cache; 
    set $access 1; 
} 
location ~ \.ts { 
    if ($access = "") { 
     return 403; 
    } 
    root /mnt/hls; 
    add_header Cache-Control no-cache; 
} 
+0

此代碼不起作用,因爲您有兩個單獨的請求。一個用於'm3u8'文件,另一個用於'ts'文件,它們與服務器完全無關。 –

+0

@AlexeyTen,我明白你在說什麼,事實上你是對的,但我再次要求如何處理結果,因爲我的要求,我可以徹底改變代碼,但我想要的結果。謝謝。 –

回答

0

如果您想要播放它們,您不能阻止對.ts細分受衆羣的訪問。如果您正在尋找某種形式的DRM,您可以使用基於令牌的身份驗證,並使用通過HTTPS提供的旋轉密鑰加上網段加密。這將使記錄您的內容更難但不是不可能。

在Nginx中實現一個認證模塊非常簡單。請參閱教程和示例項目:Nginx Auth Token Module

相關問題