用户代理正在等待每个HTTP查询的最大守护超时



浏览器正在等待Symfony Homepage的最大存储时间。

如果我禁用keepalive(apache),则可以。收到响应标题" Connection: Close",并且浏览器停止等待。总时间接近200ms。

如果我启用keepalive(apache),则标题响应是:

连接:保持现象
远离:超时= 5,最大= 500
转移编码:块

否' Content-Encoding'标题
没有" content-length"标题(保持活着)

php.ini:

output_buffering = 4096

我在远程服务器上使用php-fpm。这是Apache配置:

proxypassmatch ^/(。 .php(/.)?)$ fcgi://192.168.1.1:9000/var/var/php-fpm/www/public/$ 1

浏览器接收到数据,但正在等待5s。看来浏览器正在等待结束数据的结尾(最后0个大小数据包)。

Web服务器是Apache2.4.6,代码是PHP7.1.8/SYNFONY 4.开发过程环境中的相同代码正常(另一个主机)。

Apache日志中的执行时间接近20ms(不是5s!)。浏览器等待转移的结束,并随着守护超时而停止。如果我设置了20秒的Keepalive超时,则浏览器在接收数据后等待20秒。

Symfony性能指标"总执行时间"为18ms(在DEV模式下)。Internet Explorer时间轴(F12)显示5.35ms,在详细的末尾显示"响应时间" 5s。

如果我获得了一个简单的页面(phpinfo),我没有问题,它是Symfony HomePage,仅在Production Server上。

用卷曲(无ajax,js ...)的简单测试显示了问题:收到数据总数(</html>),但卷发仍在等待5s,并写出消息:

转移与剩下的未读取数据

关闭

而不是:

连接#0到主机xxxxxxx左完整

如果我禁用ssl apache虚拟主机,并且我用提琴手进行测试,当我单击以解码响应主体时,提琴手显示此错误消息:

块的身体没有适当地终止于0尺寸的块

PHP/Synfony是否存在PHP块问题?

非常感谢。

我解决了我的问题。Apache中的"后卫"指令导致此"块"问题。此选项允许禁用AllowOverRide和.htaccess使用情况,并要求Apache Web服务器将所有请求重定向到一个页面(不再需要DirectoryInderyIndex)。但是看来它与索引页面的keepalive不兼容。我不知道它是否是Apache错误。

相关内容

  • 没有找到相关文章

最新更新