Windows bash NGINX未成功完成PHP-FPM操作

Windows bash NGINX未成功完成PHP-FPM操作,php,windows,ubuntu,nginx,windows-subsystem-for-linux,Php,Windows,Ubuntu,Nginx,Windows Subsystem For Linux,这是一个非常奇怪的问题 操作系统:Windows 10 Env:ubuntubash Nginx:Nginx/1.10.3(Ubuntu) PHP:php7.2.1-1+ubuntu16.04.1+deb.sury.org+1 当我从CLI直接对PHP-FPM进行测试时,响应很好 像 SCRIPT\u NAME=/status SCRIPT\u FILENAME=/status REQUEST\u METHOD=GET cgi fcgi-bind-connect/run/php/php7.2-f

这是一个非常奇怪的问题

操作系统:Windows 10
Env:ubuntubash
Nginx:Nginx/1.10.3(Ubuntu)
PHP:php7.2.1-1+ubuntu16.04.1+deb.sury.org+1

当我从CLI直接对PHP-FPM进行测试时,响应很好

SCRIPT\u NAME=/status SCRIPT\u FILENAME=/status REQUEST\u METHOD=GET cgi fcgi-bind-connect/run/php/php7.2-fpm.sock

要连接到此状态系统

在Nginx启动时,它会在日志中给出这些错误

2018/06/24 15:08:45[警报]6772#6772:*2打开插座#15连接4中的左侧

2018/06/24 15:08:45[警报]6772#6772:中止`

但是如果我连接到
http://127.0.0.1/status
测试它(或任何本地url)。。。请求将一直挂起,直到发出502。仅使用以下标题:

连接:保持活动状态
内容编码:gzip
内容类型:text/html;字符集=UTF-8
日期:2018年6月24日星期日22:17:13 GMT
服务器:nginx/1.10.3(Ubuntu)
传输编码:分块

这个错误会显示在nginx日志中

2018/06/24 15:09:48[错误]6834#6834:*1上游超时(110: 连接超时)读取上游时,客户端:127.0.0.1, 服务器:\请求:“获取/状态HTTP/1.1”,上游: "fastcgi://unix:/run/php/php7.2-fpm.sock:,主机:“127.0.0.1”

但是,如果我在PHP-FPM服务挂起时终止它,那么响应将完美地显示在浏览器中。就像直接CLI请求中的操作一样

nginx配置的其余部分是默认设置。我正在为fpm使用sock,而不是ip:端口。ip:端口设置甚至无法解决大量其他问题

所以很明显FPM运行正常。。。但由于某些原因,Nginx无法确定响应何时完成发送,Nginx只是等待它被视为完成,而这永远不会发生。。因此,页面错误。我一直在搜索网上找到的每一个半相似的解决方案,似乎没有什么是我的问题;他们的方法对我也不管用


有什么想法吗?谢谢

我通过在/etc/nginx/nginx.conf中的http块中添加以下内容来修复此问题:

fastcgi_buffering off;

如果我需要启用缓冲,该怎么办?还有其他解决办法吗?