我想限制 php-cgi 进程的时间,因为进程永远不会自行关闭,而且所有这些进程会慢慢消耗掉整个 RAM(而不是缓存/缓冲区),服务器开始变得非常慢。目前关闭这些进程的唯一方法是使用 CSF 并终止超过 300 秒的进程。
使用它,我发现了运行时间超过 345600 秒的进程。我尝试了配置文件中的所有方法,但都不起作用。
我在 Ubuntu 16.04 上拥有通过 nginx 代理的 apache 2.4。
感谢大家。
答案1
我想限制 php-cgi 进程的时间,因为进程永远不会自行关闭,而且所有这些进程会慢慢消耗掉整个 RAM(而不是缓存/缓冲区),服务器开始变得非常慢。目前关闭这些进程的唯一方法是使用 CSF 并终止超过 300 秒的进程。
我也在研究这个解决方案,问题也出在 CPU 使用率上,但是除了终止挂起过程之外,没有发现任何有关时间限制的信息
最大执行时间:这设置了脚本在被解析器终止之前允许运行的最大时间(以秒为单位)。这有助于防止编写不当的脚本占用服务器
最大输入时间:这设置了脚本允许解析输入数据(如 POST、GET 和文件上传)的最大时间(以秒为单位)。
php-cgi 就像是渲染您放在服务器上的所有代码,它必须是代码很复杂,或者可能有某种东西滥用它(如 DDos 垃圾邮件)使其大量读取您的代码。
使用它,我发现了运行时间超过 345600 秒的进程。我尝试了配置文件中的所有方法,但都不起作用。
强制停止进程的唯一方法是从服务器端使用类似 killall -9 的方法,但尚未发现任何服务可以执行此操作。
从 apache 配置部分,您只需使用 IfModule prefork.c 来限制 apache 上每个子进程的连接或请求。