2011-06-24 57 views
1

已經嘗試過,並且無法通過手動實現分塊傳輸編碼和使用PHP工作的gzip內容編碼,現在我回到了在Apache中使用mod_deflate,該工具做得很好。可能使用Transfer-Encoding從PHP發送HTTP 1.1頁腳:分塊?

唯一的問題是,有一些我希望與回覆一起發送的腳註(例如,Last-Modified或ETag,所以我可以304請求相同的內容)。 HTTP 1.1規範在分塊響應中提供了頁腳(就像標題一樣,只有它們是最後一個) - 但PHP似乎沒有提供這種功能。

可能嗎? (手動實現非常好 - 除了我沒有gzip master和PHP提供的各種zlib funcs不包括創建有效的gzip塊的工具之外,我設法讓它工作〜50%的時間 - 但其他50%會破壞。Doh!)

回答

0

AFAIK,PHP在發佈後和塊編碼之前被解僱。我知道如何去做的唯一方法就是在分塊之上安裝一個輸出處理程序。我只能通過C模塊或mod_perl來完成這些工作,因爲它允許您在請求的任何位置安裝處理程序。我嘗試允許大量上傳時遇到了類似的問題,因爲PHP在帖子完成後纔會啓動。所以沒有辦法檢查「是登錄用戶」還是「只允許這個腳本獲得大量的發佈數據」。