60秒后cPanel Apache空响应

时间:2014-10-07 19:45:04

标签: php apache cpanel varnish

我目前正在尝试增加PHP脚本的最长执行时间,我无法弄清楚为什么Apache总是会在60秒后返回空响应。

我已经增加了PHP的最大执行时间,最大帖子大小和最大上传大小。我已经验证了Tweak设置和Apache设置,以查看是否存在与最大请求时间或超时的最大执行时间相关的内容...无法找到任何内容。

也许问题与内存使用或其他问题有关,但我无法弄明白。

我有第三方模块是Varnish,当我尝试使用Varnish做我的请求时,一切正常。否则,如果我禁用它(它当前被禁用),apache不能给我回复。我是从谷歌Chrome获得的:

未收到任何数据 错误代码:ERR_EMPTY_RESPONSE

PHP脚本就是这个:

<?php

    $timeInSeconds = 70;

    $start = microtime(true);
    $end = $start + $timeInSeconds;
    $diff = $end - $start;
    echo 'start: '.$start.'<br />';
    while ($start < $end)
    {
            $start = microtime(true);
    }
    echo 'end: '.$end.'<br />';
    echo 'difference: '.$diff;

使用命令行,一切正常。

2 个答案:

答案 0 :(得分:0)

转到 WHM&gt;&gt;服务经理&gt;&gt; Apache配置&gt;&gt;全局配置(我不知道正确的菜单名称,因为我的WHM是葡萄牙语)并更改了超时值。

答案 1 :(得分:0)

您可以使用以下脚本进行检查吗? 这将在stil运行时将输出缓冲区刷新到屏幕

<?php

$timeInSeconds = 70;

$start = microtime(true);
$end = $start + $timeInSeconds;
$diff = $end - $start;
echo 'start: '.$start.'<br />';
while ($start < $end)
{
    $start = microtime(true);
    echo $start;
    ob_flush();
    flush();
    sleep(1);
}
echo 'end: '.$end.'<br />';
echo 'difference: '.$diff;

有关flush的更多信息: http://php.net/manual/en/function.flush.php