读书人

PHP中 大form用post步骤传递数据丢包

发布时间: 2012-12-24 10:43:14 作者: rapoo

PHP中 大form用post方法传递数据丢包
昨天夜里生产环境出了个bug, 一个巨大无比的form ,包括三张图片, 几百个输入框, 近一千个checkbox,在用post方法提交到后台的时候, 发现数据被拦腰截断。一路打debug, 发现PHP 拿到 $_POST的时候,数据就不足。一开始以为是php中的post_max_size, upload_max_size的问题, 但是设成100M也不管用后来又以为是Apache 中的limitpostdate的问题,设大了之后也不管用。 后来在客户端装wireShark抓包, 发现tcp包中间出现 TCP WINDOWS FULL, 于是又以为是浏览器在TCP第二次握手的时候, 没有正确传输总package size。直到最后, 在Apache的error.log中发现, 出了如下错误: <span style="font-size:18px;">PHP Warning: Unknown: Input variables exceeded 1000</span> 一查,原来PHP中默认post中的参数的个数是1000, 超过部分会被自动扔掉。操!!!!!!!!!!!! 对应方法很简单, 在PHP.ini中设置 max_input_vars = 2000

站长(www.software8.co)文章,希望大家可以留言建议

读书人网 >操作系统

热点推荐