簡體   English   中英

非動態自定義HTTP標頭

[英]Non-dynamic custom HTTP headers

根據Mozilla在Ogg媒體上的這篇文章 ,媒體在瀏覽器中使用X-Content-Duration標頭可以更無縫地工作,從而提供了以秒為單位的長度。

假設我將長度存儲在某個地方(一定是存儲在數據庫中,也許還存儲在文件名本身中( video-file-name.XXX.ogv ,其中XXX是時間,以秒為單位)),有沒有辦法形成這個額外的頭文件僅使用Apache .htaccess設置? 我問是因為將文件加載到PHP腳本中似乎很笨拙,尤其是當PHP默認情況下會添加其他標頭來禁用緩存,並且無法正確響應范圍(部分內容)請求時。 是的,可以用PHP編寫許多代碼來支持ETag和范圍請求,但是當Apache具有所有內置功能時,僅添加一個標頭就做所有這一切似乎是過頭了。

我沒有示例,但是您應該能夠使用mod_header在.htaccess級別指定HTTP響應標頭。

當然,我應該在何處添加標題的問題實際上取決於您如何訪問它。 如果您只是要下載靜態資源,則可以通過Apache添加它。 但是,您提到一個數據庫。 如果決定將這些文件存儲在數據庫中,則可以使用一些API提供該文件,在這種情況下,API實現應附加標頭,而不要分流到apache。

另外,如果您想要的動態數據需要處理以確定(它不在文件名等中),那么您已經在使用某些代碼引擎來實現它,只需添加標題即可。

您可以使用mod_perl擴展名進行此類操作,以攔截這些請求並添加其他標頭,然后再允許Apache繼續處理它。

一種可能有效的純PHP方法是使用mod_rewrite使請求通過PHP路由,添加附加頭,然后讓Apache通過使用函數處理其余部分。

或者,您可以使用持續時間數據庫來構造一個靜態.htaccess文件,該文件使用mod_header為每個請求的文件插入正確的持續時間標頭。

這是mod_cern_meta的域。 它允許為文件靜態分配額外的HTTP標頭。

您可以使用cron作業,並為每個視頻生成一個* .meta文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM