nginx在php echo消息后发送额外数据

时间:2017-12-03 14:27:33

标签: php curl nginx

我有一个用c ++编写的软件,使用curl从我的网络服务器获取信息。我在php中编写了Web代码。基本上发生的是在收集信息之后我使用echo在php页面上显示它,并且在任何调用中,只有一个echo被调用。

现在,当在服务器上运行nginx时,消息末尾会有额外的行:

[2017/12/3 15:15:13]回复:预期大小:27:rZXkxMjsyNTMjMxOTkyMTQ3ODs =
(空行)
0
(空行)
(空行)
(空行)
(空行)

这是运行apache2时的回复:

[2017/12/3 15:15:43]回复:预期大小:27:rZXkxMjsyNTMjMxOTkyMTQ3ODs =

当消息更长时,这变得更糟,因为它被分成块,并且在nginx上的块之间显示垃圾,使得回复不正确。即使只发送块,也可以在apache2上正常工作。

我的问题是,在nginx上可能导致此问题的原因是什么?非常感谢您的投入!

1 个答案:

答案 0 :(得分:0)

所以事实证明,关闭nignx.conf中的分块传输编码可以解决问题:

chunked_transfer_encoding off;