在收到所有POST数据之前,PHP脚本是否可以启动?

我在Apache下运行PHP,我想发送缓慢的POST数据到页面,当POST数据到达时,将消息写入数据库。 我使用WebRequest从.NET应用程序发送数据,并将SendChunked为true。

不幸的是,它看起来像PHP脚本不会开始执行,直到所有的POST数据已经到达。 我查看了apache日志,发现请求立即启动,但在PHP脚本中echo strftime(...)语句显示,在收到所有POST数据之后,它才运行。

有什么办法可以告诉PHP立即启动吗? 我尝试在PHP.ini文件中设置always_populate_raw_post_data = Off ,但这没有任何区别。 我的请求有一个application/octet-stream的内容types,并且$HTTP_RAW_POST_DATA仍然填满了所有的POST数据。

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

当客户端使用PUT动词时,数据将流入PHP。 它可以通过从客户端发送的字节逐字节地访问php:://input流。