我收到一条max_input_vars错误消息。
我了解php.ini从5.3.9版开始有可以更改此设置的设置,但是我正在运行5.1.6版。
当我查看5.1.6服务器的配置信息时,它的max_input_vars值是1000。
我的问题是:即使我正在运行5.1.6,我也可以从中看到此设置,phpinfo()但它不在php.ini文件中。这是否意味着该值在此版本的PHP中是硬编码的并且无法更改?
我收到一条max_input_vars错误消息。
我了解php.ini从5.3.9版开始有可以更改此设置的设置,但是我正在运行5.1.6版。
当我查看5.1.6服务器的配置信息时,它的max_input_vars值是1000。
我的问题是:即使我正在运行5.1.6,我也可以从中看到此设置,phpinfo()但它不在php.ini文件中。这是否意味着该值在此版本的PHP中是硬编码的并且无法更改?
5.1.6 -> 5.3.3,然后降级回5.1.6。扔给我,因为该选项在5.1.6 php.ini文件中不存在。我加了线,增加了数字,然后我的错误/问题消失了。
Answers:
您可以将其添加到php.ini,它应该可以工作-刚刚在PHP 5.3.6上进行了测试。
在PHP网络上的参考:
http://php.net/manual/zh-CN/info.configuration.php#ini.max-input-vars
请注意,您不能在运行时使用function设置此指令ini_set(name, newValue),例如
ini_set('max_input_vars', 3000);
不起作用。
如文档中所述,只能在目录范围内设置此指令,这意味着可以通过.htaccess文件,httpd.conf或.user.ini(自PHP 5.3起)进行设置。
参见http://php.net/manual/en/configuration.changes.modes.php
将指令添加到php.ini或在.htaccess中放置以下行将起作用:
php_value max_input_vars 3000
php_value suhosin.get.max_vars 3000
php_value suhosin.post.max_vars 3000
php_value suhosin.request.max_vars 3000
max_input_vars = 3000(+等号)。
刚尝试通过5.3.3进行此修复,并且没有任何变化。谷歌搜索我发现此网页http://anothersysadmin.wordpress.com/2012/02/16/php-5-3-max_input_vars-and-big-forms/详细介绍了其他设置(如果您的服务器使用Suhosin补丁程序则需要更改)Debian下的Apache会这样做。
该网站说明:
因此,如果要将这个数字从默认数字1000增加到3000,则必须在php.ini中输入以下几行:
max_input_vars = 3000 suhosin.post.max_vars = 3000 suhosin.request.max_vars = 3000
我对其进行了测试(在/ etc / php5 / apache2和/ etc / php5 / cli中都将设置添加到php.ini中,并成功重新启动了Apache),但是phpinfo中仍然没有max_input_vars变量。
一些站点将PHP 5.3.9称为将进行此更改的第一个PHP版本,因此我最初的错是RTM不合适,尽管我很感兴趣看到人们报告说它在5.3.3之上的版本中工作但低于5.3.9。
您需要取消注释php.ini文件中的max_input_vars值并增加它(exp。2000),也不要忘记重新启动服务器,这将有99,99%的帮助。
sudo service apache2 restart。我需要重启Ubuntu吗?
;并将其值更改为3000。问题可能出在浏览器的缓存中。关闭PHPMyAdmin并在新选项卡中打开,现在可以使用。谢谢!
现在是2018年,当我必须发送超出的请求时,我就陷入了这个问题max_input_vars。我想出了一个解决方案,像我这样的新手忘了在更改max_input_vars参数后重新启动php fpm服务。因为我只尝试重新启动apache2服务,而不是php fpm
/etc/php/7.0/fpm/php.ini并根据需要设置编号max_input_vars = 4000sudo service php7.0-fpm restart希望它可以帮助
测试上Debian Stretch,php7.0
请注意,您必须将其放在Centos7中的“ .user.ini”文件中,而不是以前在Centos6中工作的“ php.ini”文件中。您可以将“ .user.ini”放在任何子目录中,以便仅影响该目录。
.user.ini:
max_input_vars = 3000
在Centos7和PHP 5.6.33上测试。
php_value max_input_vars 6000
“将此行放在您站点的.htaccess文件中。”
只是在向Wordpress添加菜单项时遇到了同样的问题。我在Ubuntu 18.04,PHP 7.0上使用Wordpress 4.9.9。我只是取消注释以下行,并将其增加到1500 in/etc/php/7.0/apache2/php.ini
; How many GET/POST/COOKIE input variables may be accepted<br>
max_input_vars = 1500
然后使用以下命令来实现更改:
sudo apache2ctl configtest #(if it does not return ok Apache will not start)
sudo service apache2 reload
希望能有所帮助。
“ PHP消息:PHP警告:未知:输入变量超过1000。要增加限制,请在php.ini中更改max_input_vars。
这个php配置参数max_input_vars不仅会影响您的GET / POST / COOKIES参数,而且还会控制您的任何表单输入。
要设置或更改其值,请执行以下步骤。
1)通过在您的php.ini文件中查看来检查现有的设置/值,找到php.ini文件,方法是使用
<?php echo getinfo(); ?>
在下面找到关键:加载的配置文件:/etc/php/5.6/fpm/php.ini
2)在可编辑模式下打开php.ini文件,并搜索max_input_vars。此行可能在您现有的默认设置中被注释,默认值为1000,因此请删除;取消注释并用您合适的值进行编辑,例如2500。
3)使用以下方法保存文件并重新启动PHP服务
sudo service php5.6-fpm restart
同样,您可以轻松地更新任何其他类似的PHP配置。
是的,将其添加到php.ini中,重新启动apache,它应该可以工作。
如果您愿意,可以随时对其进行测试 ini_set("max_input_vars",100)
max_input_vars在PHP 5.1.6源代码中根本看不到任何引用,因此我不确定在phpinfo()输出中如何看到它。据我所知,它在5.3.9之前不存在...