【问题标题】:Linux allowed open files limit differs between CGI and CLICGI 和 CLI 之间的 Linux 允许打开文件限制不同
【发布时间】:2013-01-10 00:58:35
【问题描述】:

通过命令行和 apache 运行我的脚本时,我的打开文件限制有问题。

我的 apache 服务器在用户“apache”下运行,它的限制在 /etc/security/limits.conf 文件中被覆盖,如下所示:

apache soft nofile 10240
apache hard nofile 40960

我有一个用于测试的简单脚本:

<?php
system('whoami');
system('ulimit -a | grep open');

当我通过浏览器点击这个脚本时,我得到:

apache
open files                      (-n) 1024

但是当我在用户 apache 下的命令行中运行它时,我得到:

[reza@app pdf]$ sudo -u apache php script.php
apache
open files                      (-n) 10240

有人可以向我解释导致这种差异的原因吗?

(不确定是否是 ServerFault 问题,请随意移到那里)

干杯

【问题讨论】:

    标签: php linux apache cgi


    【解决方案1】:

    当您从命令行运行时,适用于 apache 用户的限制。当您点击 Web 服务器时,启动 Web 服务器的环境的限制将适用。您可能希望将 ulimit 语句添加到启动 apache Web 服务器的脚本中。

    【讨论】:

    • 是的,就是这样。我必须在我的/etc/init.d/httpd 中运行“ulimit -S -n 1024 -H -n 8192”,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多