Nginx通过fastcgi连接到PHP-fpm,使用位置块中的标准/ etc / Nginx / fastcgi_params.
当使用cgi-fcgi -bind从命令行连接到/.status(PHP-fpm.ini :: ping.path)时,结果会按预期返回(X-Powered-By set,响应体等).
当使用Nginx请求时,结果返回空(X-Powered-By设置,没有体长或内容). Nginx返回200,因为它得到了“有效”的响应.
看着tcpdump,我已经在他们的FCGI头中隔离了对奇偶校验的请求(减去了仍然由shell设置的与用户相关的env变量.)
标准factcgi_params文件不包含SCRIPT_FILENAME的关键行.
location ~ \.PHP${ include fastcgi_params; fastcgi_split_path_info ^(.+\.PHP)(/.+)$; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; }
添加它并重新启动Nginx.