懂php fastcgi协议的看看, 获取不到$_POST ?
实现一个http服务器, 在支持php时, 使用fastcgi协议与php-fpm通信
实现get请求是发送QUERY_STRING和SCRIPT_FILENAME到php-fpm, 服务器返回结果,这里正常.
实现post请求是发送content-length字段和body内容到fastcgi服务器, 然后服务器返回结果.像下面这样
表单代码
<html>
<body>
<form action = "file.php" method = "POST" >
<input type="text" name="age" />
<input type="submit" />
</form>
</body>
</html>
php代码
<?php
var_dump($_POST['age']);
发送的参数
SCRIPT_FILENAME : /home/tan/Demo/studyHttpd/htdocs/file/file.php
REQUEST_METHOD : POST
QUERY_STRING :
CONTENT_TYPE : application/x-www-form-urlencoded
CONTENT_LENGTH : 7
发送的body为 , 也就是表单中的内容
age=123
为什么php-fpm返回结果为NULL呢 ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你分别打印
$_POST
和$_REQUEST
即:
fastcgi客户端往PHP-FPM发送表单POST数据不是这么玩的。