修改http.FileServer 傳回的Mime 類型
Go 中的http.FileServer 套件提供了一種便捷的方式來提供靜態檔案。但是,有時,FileServer 傳回的預設 mime 類型可能不準確。例如,如果您有一個 mp3 檔案目錄,FileServer 可能會為它們提供 text/html 的 Content-Type 標頭,這會導致媒體播放器出現問題。本文解決了 FileServer 提供不正確 mime 類型的常見問題並提供了解決方案。
問題中提供的程式碼將 FileServer 設定為在 /media 端點提供 mp3 檔案目錄。出現此問題的原因是對 mp3 檔案的請求與檔案伺服器的模式不符。模式 /media 缺少尾部斜杠,這導致文件伺服器處理程序被繞過。
要解決此問題,請修改模式以包含尾部斜杠:
http.Handle("/media/", http.StripPrefix("/media/", fs))
通過添加尾部斜杠,我們創建一個根子樹處理程序,匹配以“/media/”開頭的所有路徑。這確保了 FileServer 將處理 mp3 檔案的請求並以正確的 mime 類型為它們提供服務。
以上是如何使用 http.FileServer 正確提供文件並避免不正確的 Mime 類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!