php接收服务器数据格式错误,使用Nginx,fastcgi和php设置开发环境时,我从php服务器收到“无效请求(格式错误的HTTP请求)”...

我正在设置一个使用Nginx的开发环境,并使用fastcgi将请求转发到命令行PHP服务器.当我直接向PHP服务器发送请求时,它会正确处理它们. Nginx服务器可以正确处理对非PHP文件的请求.但是,当我通过Nginx发送PHP请求时,PHP服务器被命中,但返回“无效请求(格式错误的HTTP请求)”.

抱歉附加所有配置文件,但我不确定从哪里开始.所有文件都位于$PROJECT_PATH / dev-config /中.

这是我的Nginx配置的相关部分.

http {

...

server {

root .;

listen 8123;

server_name localhost;

location / {

index index.PHP;

}

location ~ \.PHP${

try_files $fastcgi_script_name =404;

fastcgi_param SCRIPT_FILENAME $request_filename;

fastcgi_pass 127.0.0.1:9123;

fastcgi_index index.PHP;

include fastcgi_params; # this file is the default

}

}

}

这是运行(重新)启动Nginx和PHP的脚本:

#!/bin/bash

PROJECT_PATH="$(dirname $0)/../"

Nginx -s stop || true

Nginx -c dev-config/Nginx.conf -p $PROJECT_PATH

PHP -c PHP-dev.ini -t $PROJECT_PATH -S 127.0.0.1:9123

我发送的文件是test.PHP:

echo 'YAY!' ?>

在我的Nginx错误日志中,我收到如下消息:

2017/10/27 08:12:56 [error] 68934#0: *1 upstream prematurely closed connection while reading response header from upstream,client: 127.0.0.1,server: localhost,request: "GET /test.PHP HTTP/1.1",upstream: "fastcgi://127.0.0.1:9123",host: "localhost:8123"

同时,PHP正在发送如下消息:

[Fri Oct 27 08:12:56 2017] 127.0.0.1:52470 Invalid request (Malformed HTTP request)

这表明该请求由Nginx处理,并继续发送到PHP服务器.但是该请求在某种程度上是不正确的.

>如何发送格式正确的请求?

>或者,如果现在无法告诉我,我该怎么做才能从PHP获得有关请求的确切信息,确切的说,是什么?

明确地说,这是要在笔记本电脑的开发环境中运行,而每个用户的配置都不会更改.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值