php.ini中的max_input_vars实际上有什么影响,什么是安全的高值?

问题描述 投票:4回答:1

我知道max_input_vars的php.ini值默认为1000(我使用的是5.6版本)。我的POST数据被截断,所以我需要增加值。这确实解决了我的问题。在更改这些值时,我只想了解它实际上具体影响了什么。

如果我向我的后端发送一组数据,这是否意味着它只能包含大约1000个元素?看起来我的表单总和不是1000个输入字段,所以我想弄清楚这个数字的用途。

我能去的安全高数是多少? 10000会被认为太高吗?

php apache http-post
1个回答
3
投票

基本上这就是我们所谓的“理智检查”。它将请求限制在合理的水平,以防止诸如拒绝服务攻击之类的事情。

From the manual

可以接受多少输入变量(限制分别应用于$ _GET,$ _POST和$ _COOKIE superglobal)。使用此指令可以减少使用哈希冲突的拒绝服务攻击的可能性。如果输入变量多于此指令指定的输入变量,则会发出E_WARNING,并从请求中截断其他输入变量。

简而言之,将其提升到你需要的任何东西,并记住这使你更容易受到可能使服务器陷入困境的攻击。本身没有“安全”号码。只是不要使服务器过载,否则您的PHP请求可能会开始超时或内存不足。

© www.soinside.com 2019 - 2024. All rights reserved.