PHP中max_input_vars默认值为1000导致多表单提交失败

2015-09-22 22:54 阅读 261 次 评论关闭

公司内一个php的后台管理系统,之前运行在apache上,后来我给转到nginx+php上后,其他功能运行正常,有一个修改功能提交表单后没有提交成功,查了代码没查出来什么问题,后来看了下php error日志,也没有什么线索,打印post请求后,也发现提交表单个数和正在表单个数对不上(当时怀疑过是不是某个插件是不是没装,字符集对不对等),再看了下php-fpm的日志,有点信息可以参考了。

[25-Sep-201415:19:30] WARNING:[pool www] child 28329 said into stderr:"NOTICE: PHP message: PHP Warning:  Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0"

提示input 变量个数超过1000,建议修改php.ini文件中的 max_input_vars,PHP从5.3.9开始增加一个变量 max_input_vars 用来限制提交的表单数量。

妈的,我这个功能(类似于phpmysqladmin功能,读取数据库表,然后能写入编辑,然后数据库字段有128个,然后每个字段有11个input框)大概有1400多个input,(多么痛的领悟,为毛这么吊,研发一个表搞这么多字段),

然后我在php.ini里面加入

max_execution_time =30;Maximum execution time of each script,in seconds
max_input_time =60;Maximum amount of time each script may spend parsing request data
max_input_vars =2000

重启php-fpm后,功能正常了。看日志很重要。

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:PHP中max_input_vars默认值为1000导致多表单提交失败 | 猎微网

评论已关闭!