php post大量数据时发现数据丢失问题解决方法


Posted in PHP onJune 20, 2015

解决办法:

在php.ini中将max_input_vars调大改为5000就可以了

原因追查:

from的enctype="multipart/form-data"

php版本5.6.6

问题:部分POST数据接收不到

追源代码发现是php中max_input_vars配置造成的;

php post大量数据时发现数据丢失问题解决方法

相关函数为rfc1867_post_handler,如果超过长度,则不会调用safe_php_register_variable来进行变量注册

相关堆栈如下

#0  rfc1867_post_handler (

    content_type_dup=0x7ff85307a5f8 "multipart/form-data; boundary=", '-' <repeats 27 times>, "306141311912057", 

    arg=0x7ff85307ccc0) at /tmp/php-5.6.2/main/rfc1867.c:681

#1  0x00000000007a4bb0 in sapi_handle_post (arg=<value optimized out>) at /tmp/php-5.6.2/main/SAPI.c:185

#2  0x00000000007ab72f in php_default_treat_data (arg=0, str=0x0, destArray=0x7ff85307ccc0)

    at /tmp/php-5.6.2/main/php_variables.c:399

#3  0x0000000000615c91 in mbstr_treat_data (arg=0, str=0x0, destArray=0x0) at /tmp/php-5.6.2/ext/mbstring/mb_gpc.c:69

#4  0x00000000007aa9fb in php_auto_globals_create_post (name=0x7ff852f474f0 "_POST", name_len=5)

    at /tmp/php-5.6.2/main/php_variables.c:741

#5  0x00000000007d63bb in zend_auto_global_init (auto_global=0x196c950) at /tmp/php-5.6.2/Zend/zend_compile.c:6832

#6  0x0000000000808a43 in zend_hash_apply (ht=0x1955cb0, apply_func=0x7d63a0 <zend_auto_global_init>)

    at /tmp/php-5.6.2/Zend/zend_hash.c:641

#7  0x00000000007aaa4e in php_hash_environment () at /tmp/php-5.6.2/main/php_variables.c:702

#8  0x000000000079bb25 in php_request_startup () at /tmp/php-5.6.2/main/main.c:1671

#9  0x00000000008a756d in main (argc=<value optimized out>, argv=<value optimized out>)

    at /tmp/php-5.6.2/sapi/fpm/fpm/fpm_main.c:1887

其中rfc1867_post_handler为php_session_rfc1867_callback

完~

PHP 相关文章推荐
MySQL GBK→UTF-8编码转换
May 24 PHP
PHP的SQL注入实现(测试代码安全不错)
Feb 27 PHP
php和js如何通过json互相传递数据相关问题探讨
Feb 26 PHP
深入PHP中的HashTable结构详解
Jun 13 PHP
php5.5中类级别的常量使用介绍
Oct 02 PHP
PHP判断远程图片或文件是否存在的实现代码
Feb 20 PHP
PHPMailer发送HTML内容、带附件的邮件实例
Jul 01 PHP
PHP正则表达式之捕获组与非捕获组
Nov 06 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
Jul 15 PHP
PHP网页安全认证的实例详解
Sep 28 PHP
PHP 扩展Memcached命令用法实例总结
Jun 04 PHP
PHP文件生成的图片无法使用CDN缓存的解决方法
Jun 20 #PHP
php简单统计字符串单词数量的方法
Jun 19 #PHP
PHP对文件夹递归执行chmod命令的方法
Jun 19 #PHP
php强制用户转向www域名的方法
Jun 19 #PHP
php自动更新版权信息显示的方法
Jun 19 #PHP
php中Snoopy类用法实例
Jun 19 #PHP
php计算整个目录大小的方法
Jun 19 #PHP
You might like
上海牌131型七灯四波段四喇叭一级收音机
2021/03/02 无线电
php中检查文件或目录是否存在的代码小结
2012/10/22 PHP
适用于初学者的简易PHP文件上传类
2015/10/29 PHP
PHP验证码无法显示的原因及解决办法
2017/08/11 PHP
PHP设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
DB.ASP 用Javascript写ASP很灵活很好用很easy
2011/07/31 Javascript
jquery插件制作 表单验证实现代码
2012/08/17 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
2015/08/20 Javascript
JavaScript判断表单为空及获取焦点的方法
2016/02/12 Javascript
D3.js实现散点图和气泡图的方法详解
2016/09/21 Javascript
web前端开发upload上传头像js示例代码
2016/10/22 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
package.json各个属性说明详解
2020/03/11 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
python编写暴力破解FTP密码小工具
2014/11/19 Python
Python 备份程序代码实现
2017/03/06 Python
利用python将xml文件解析成html文件的实现方法
2017/12/22 Python
对python:threading.Thread类的使用方法详解
2019/01/31 Python
Python定义函数功能与用法实例详解
2019/04/08 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
2019/05/18 Python
Ubuntu18.04中Python2.7与Python3.6环境切换
2019/06/14 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
html5桌面通知(Web Notifications)实例解析
2014/07/07 HTML / CSS
美国最受欢迎的度假租赁网站:VRBO
2016/08/02 全球购物
瑞士香水购物网站:Parfumcity.ch
2017/01/14 全球购物
美国校服网上商店:French Toast
2019/10/08 全球购物
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
莫斯科大型旅游休闲商品超市:Camping.ru
2020/09/16 全球购物
怎么写好自荐书
2014/03/02 职场文书
单位委托书怎么写
2014/08/02 职场文书
django注册用邮箱发送验证码的实现
2021/04/18 Python
goland 设置project gopath的操作
2021/05/06 Golang
AJAX学习笔记
2021/05/18 Javascript
Java由浅入深通关抽象类与接口(下篇)
2022/04/26 Java/Android