php post 奇怪的问题
最近使用docker搞了一个Php8的版本,但是遇到一个很奇怪的问题。在post数据的后返回的结果会把请求体的参数一起返回回来 比如如下
curl -X POST \
http://test.com/open/test \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-H 'postman-token: d357ac6d-c2f0-237f-baa8-dbc6c759d6e2' \
-d '{
"commodity_id": 1
}'
返回的结果如下
{"commodity_id": 1}{"code":success}
真正的相应前面带了个请求体。
目前docker php8.0.2有这个问题,PHP-BUG网站上也有这个问题描述
https://bugs.php.net/bug.php?...
我的环境:
机器:CentOS Linux release 7.8.2003 (Core)
php-docker : https://github.com/docker-lib...
nginx: nginx/1.12.1
测试: 使用Post方法提交表单信息,刚启动的容器是正常的,过一段时间就会出现描述的问题,测试文件内容只需要一个Index.php 包含内容
<?php
echo 'string';
exit;
测试数据:
curl -X POST \
http://test.com/ \
-H 'cache-control: no-cache' \
-H 'content-type: application/x-www-form-urlencoded' \
-H 'postman-token: 7783c00c-347f-e74f-7316-2a9bb632eb47' \
-d points=10
我本地的mac环境倒是正常的,但是服务器不正常
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这和PHP无关,是你的接口自己输出的内容。
get_included_files()只有一个 index.php文件
index.php文件内容
使用Postman,请求方式选择Post,选择form-data 或者是raw
请求体数据无所谓,返回结果会偶尔产生请求体添加在返回结果前面
其他就没什么东西,很简单。还有一个问题就是我打印php配置文件的时候 auto_prepend_file 这个值会变化
我也遇到了这个问题,配置都正确,但是总是会有这个问题出现.
后来看了:https://bugs.php.net/bug.php?...
也有同样的问题,我依照描述,php.ini修改为了:
allow_url_include = Off
auto_prepend_file = none;
并且将php-fpm的监听端口从9000变更为了其他端口,我变为了8999,
到目前为止,10几个小时了,还没有在发生之前的问题了,楼主可以借鉴一下
你还需要挂载出来一个文件,修改配置的,下图所示:
解决了没啊,我真的服了,我以为这是我的问题结果还能搜到