接收"输入变量超过1000"更新max_input_vars

时间:2015-05-20 16:43:10

标签: php apache .htaccess magento apache2

我正在运行Magento,我正在接收" mod_fcgid:stderr:PHP警告:未知:输入变量超过1000.要在php.ini中增加限制更改max_input_vars。在第0行"当试图在DB中保存5000+产品的相关产品时。

大多数人建议尝试通过将max_input_vars更新为更高版本来解决此问题。我继续将max_input_vars = 100000添加到php.ini,并将php_value max_input_vars 100000添加到.htaccess中以获得良好的衡量标准。

php.ini正在更新,当我运行php -i |时grep max_input_vars它输出max_input_vars => 100000 => 100000

我也尝试过较小的数字,如5000,6000(如果由于某种原因,100000太高了)

我确实记得重启apache2,所以这不是问题。

无论我做什么,我仍然会收到" mod_fcgid:stderr:PHP警告:未知:输入变量超过1000.要增加php.ini中的限制更改max_input_vars。在第0行"

的未知中

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

使用代码

创建一个pi.php文件
<?php phpinfo();

并将其保存在与Magento相同的文件夹中,然后通过浏览器访问。

将为max_input_vars(本地列)显示的值是您的运行时值。如果它与php.ini中的设置不同,您可能更改了错误的INI文件。

Mod_FCGID可以使用&#34; classic&#34;中的差异文件。 /etc/php.ini,或/etc/php.d/中任何文件中的设置 - 例如 - 可以覆盖&#34;全局文件中的文件&#34;。

phpinfo()显示已解析的INI文件列表,因此您可以看到要修改的内容。

请记住在修复问题后取消文件:它可能是安全威胁,因为您展示了许多可能对黑客有用的细节。

答案 1 :(得分:0)

问题来自您的Ajax XMLHttpRequest()函数。

您试图使用错误的标头通过XHttp.send(FormData)发送FormData信息。

在ajax函数中,删除.setRequestHeader的任何行。例如

XHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 

删除。默认情况下,它将设置为适当的标题。