服务器无法确定此原始HTTP消息的长度

rdl*_*rey 0 php post http chunked-encoding

我正在尝试使用PHP中的套接字将分块的POST数据流式传输到本地服务器进行测试.如果我不对请求实体主体进行分块并提供Content-Length头,则此方法可以正常工作.

但是,当我按如下方式对传输进行分块时,服务器无法识别消息的结尾.下面的原始消息有什么问题阻止服务器正确识别消息是否完整?

POST / HTTP/1.1
HOST: localhost
CONTENT-TYPE: text/plain
USER-AGENT: testing
ACCEPT-ENCODING: gzip,deflate,identity
TRANSFER-ENCODING: chunked

36
When in the chronicle of wasted time
0
Run Code Online (Sandbox Code Playgroud)

在最后'0'之后有2x CRLF,所以最后5个字节是:0x30, 0x0D, 0x0A, 0x0D, 0x0A.

我已经尝试将此请求发送到本地Apache服务器和PHP5.4的内置测试服务器.两者都无法确定请求是否完成,并且执行会挂起,直到套接字超时.

Mus*_*usa 5

该值应为十六进制36→24