我正在使用jQuery.post
,其中一个字段是一个大字符串。这可能是2MB的文字。
jQuery.post
请求没问题,但PHP的$_POST
数组中不存在此字段。
所有其他发布的字段都很好。这肯定是被发送的,实际上是file_get_contents("php://input")
如果我缩小大字符串的大小,它会再次显示在$_POST
数据中。
如何删除此字段大小限制,以便PHP将大字段推送到$_POST
?
编辑:我将post_max_size
更改为100M
,但没有改变任何内容。
答案 0 :(得分:3)
尝试 Increasing the maximum post size 或检查服务器是否有任何额外的限制机制,如 http://www.hardened-php.net/suhosin/
检查您的phpinfo()并查找任何与帖子相关的限制
答案 1 :(得分:2)
这是一个服务器配置。如果您在Linux下使用PHP或类似,您可以使用.htaccess来控制它们,如下所示:
#set max post size
php_value post_max_size 20M
答案 2 :(得分:0)
为便于记录,还有其他一些选项可能会导致缺少帖子数据,
一个是max_input_vars
,它定义了请求中允许的发布变量的数量。默认情况下,它设置为非常高的值(1000),但是在某些情况下,您可能希望增加该值。
还有max_input_nesting_level
可能也是导致嵌套变量(默认情况下为64)的原因。