PHP 服务使用的资源限制指令

2015-02-27 0 By admin

PHP 服务运行过程中,会系统内存\CPU等资源的使用情况,不能无限制的申请。在维护服务运行的管理中,我们会通过相关指令限制PHP 服务对资源的使用。

1、max_execution_time integer

这设置了脚本被解析器中止之前允许的最大执行时间,单位秒。 这有助于防止写得不好的脚本占尽服务器资源。
默认设置为 30。 从命令行运行 PHP 时,默认设置为 0。

你的 web 服务器也可以有其他超时设置,也有可能中断 PHP 的执行。 Apache 有一个 Timeout 指令,IIS 有一个 CGI 超时功能。 他们默认都是 300 秒。

2、max_input_time integer

脚本解析输入数据(类似 POST 和 GET)允许的最大时间,单位是秒。
它从接收所有数据到开始执行脚本进行测量的。

3、max_input_nesting_level integer

设置输入变量的嵌套深度 (例如 $_GET,$_POST……)

4、max_input_vars integer

接受多少输入的变量(限制分别应用于 $_GET、$_POST 和 $_COOKIE 超全局变量)
指令的使用减轻了以哈希碰撞来进行拒绝服务攻击的可能性。
如有超过指令指定数量的输入变量,将会导致 E_WARNING 的产生, 更多的输入变量将会从请求中截断。

5、memory_limit integer

This sets the maximum amount of memory in bytes that a script is allowed to allocate. This helps prevent poorly written scripts for eating up all available memory on a server. Note that to have no memory limit, set this directive to -1.
这设置允许脚本分配的最大内存量(以字节为单位)。 这有助于防止写入不足的脚本来吞噬服务器上的所有可用内存。 请注意,没有内存限制,请将此指令设置为-1。