2010-10-15 66 views
3

我在Apache下運行PHP,我想發送緩慢的POST數據滴流到頁面,當POST數據到達時將消息寫入數據庫。我使用WebRequest從.NET應用程序發送數據,並將SendChunked設置爲true。在收到所有POST數據之前,PHP腳本是否可以啓動?

不幸的是,它看起來像PHP腳本不會開始執行,直到所有的POST數據到達。我查看了apache日誌,發現請求立即開始,但是PHP腳本中的echo strftime(...)語句顯示它在收到所有POST數據之後才運行。

有什麼辦法可以告訴PHP立即啓動嗎?我嘗試在PHP.ini文件中設置always_populate_raw_post_data = Off,但這沒有什麼區別。我的請求的內容類型爲application/octet-stream,並且$HTTP_RAW_POST_DATA仍然填充了所有POST數據。

回答

5

您可以使用HTTP PUT方法執行此操作,但不能使用POST。

當客戶端使用PUT動詞時,數據流式傳輸到PHP。從客戶端發送時,可以通過php:://input字節逐字節地訪問它。

+0

最後我找出了PUT的優點。 – 2010-10-15 21:18:47

相關問題