Nginx
在 nginx 上禁用 206 部分內容響應
我有一個使用影片標籤的 HTML5 網路應用程序。根據使用者的操作,將播放影片的不同部分作為響應。此影片不超過 5MB。
我需要將此影片完全下載到客戶端上,否則如果要播放的部分位於影片的末尾,使用者將不得不等待緩衝。實際上,瀏覽器的行為是詢問是否支持範圍請求並從我的伺服器 nginx 獲取 HTTP 206 部分內容響應。
我找到了一種使用 xhr2 將整個影片下載為 BLOB 的方法。但是,我想知道對於不支持 xhr2 的瀏覽器是否有可能使 nginx 拒絕範圍請求並發送經典的 HTTP 200 響應,以便瀏覽器獲取整個影片。
那可能嗎?非常感謝您的幫助!
設置
max_ranges
為 0。這需要 nginx 1.1.2 或更高版本。例子:
location ~ \.mp4$ { max_ranges 0; }