最近在项目中,出现一个奇怪的现象,在提交一个表单页面的时候,发现post过来的数据不完整,通过firebug查看http中已将所有post数据都提交上去,所有怀疑是服务器端配置问题,以为是php post大小的限制,结果不是,最后终于google到办法:
原来PHP从5.3.10开始增加一个变量 max_input_vars 用来限制提交的表单数量,实在无语。
该值默认情况下是1000 , 不能满足有1000个以上输入项的需求,所以得在php.ini 里面加上更大的值如:
max_input_vars = 100000 ,修改后重启php,终于一切正常!
之后了解原来是为了解决hash冲突受攻击时,而增加了配置指令max_input_vars