Http

在 Google Cloud Bucket 上禁用 Range 標頭

  • July 20, 2017

我正在提供本質上是 gifv 文件的內容。我注意到正在執行多個請求以分塊檢索影片。

我有預感,如果一次提供影片,而不是執行多個請求,對使用者來說性能會更好。

我認為真正控制交易的是瀏覽器,但不幸的是,我還沒有找到確切的路徑或原因(可能是自動播放)。為了驗證我的假設,最好自己禁用伺服器上的範圍下載。

雖然不支持“禁用範圍請求”功能,但您可以通過混淆編碼來強制執行此行為。

GCS 支持範圍標頭,但使用 gzip 編碼上傳的文件是特殊的(如此處所述:https ://cloud.google.com/storage/docs/transcoding#range )。如果使用 gzip 編碼上傳文件(並且“contentEncoding”屬性表明了這一點),並且客戶端嘗試下載文件但未指定他們接受該內容編碼,則 GCS 將忽略 Range 標頭並提供解碼的對象。

下一個問題是大多數 Web 瀏覽器都接受 gzip 編碼。您需要禁用它以測試您的理論。嘗試為您選擇的瀏覽器獲取一個擴展,該擴展可讓您禁用接受編碼標頭。

引用自:https://serverfault.com/questions/863218