zoukankan      html  css  js  c++  java
  • [解决方法] php大form用post方式传递数据过多被截取的问题

    nginx.conf
     
    #keepalive_timeout  60;
    #send_timeout 3m;
    client_max_body_size 500m;

    php.ini
     
    max_execution_time = 600
    max_input_time = 600
    memory_limit = 32m
    file_uploads = on
    upload_tmp_dir = /tmp
    upload_max_filesize = 32m
    post_max_size = 32m

    php-fpm.conf
     
    <value name="rlimit_files">65535</value>
    <value name="request_terminate_timeout">0s</value>

    google一下,原来PHP从5.3.9开始增加一个变量 max_input_vars 用来限制提交的表单数量,折腾了半天,原来php小版本升级引起的不兼容,php中默认post中的参数的个数是1000, 超过部分会被自动扔掉。用 phpinfo()查看max_input_vars。如下图所示:

    解决方法很简单,在PHP.ini中设置 max_input_vars = 5000

    php.ini 文件里的  max_input_vars 默认值为 1000, 正常情况下够用,偶尔遇到我这种提交2000多个表单的情况还是比较少见的,不过,如果发现提交表单个数不全的情况,可以试试修改这个配置。

    tags: php post 数据被截取, php post 数据不完整, php post 丢失数据

  • 相关阅读:
    问题账户需求分析
    2018年春季个人阅读计划
    图表分析
    《软件需求与分析》需要掌握的内容
    假期实践体验
    开发进度12
    开发进度11
    python+opencv实现轮廓形状拟合
    ubuntu无法安装vim、tree等解决办法
    报错 version `GLIBCXX_3.4.22' not found
  • 原文地址:https://www.cnblogs.com/cymbidium/p/5221066.html
Copyright © 2011-2022 走看看