使用PHP脚本60秒后我不断收到500内部服务器错误

时间:2014-03-09 00:48:10

标签: php apache internal-server-error php-ini

首先我启用了PHP错误但是在运行此脚本时我一直收到500错误:

<?php

error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
$location = '/dir/';

mkdir($location.date('Y-m-d'), 0700);

$yesterday = date("Y-m-d", strtotime("-1 day"));

function createZipFromDir($dir, $zip_file) {
    $zip = new ZipArchive;
    if (true !== $zip->open($zip_file, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE)) {
        return false;
    }
    zipDir($dir, $zip);
    return $zip;
}

function zipDir($dir, $zip, $relative_path = DIRECTORY_SEPARATOR) {
    $dir = rtrim($dir, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR;
    if ($handle = opendir($dir)) {
        $i=0;
        while (false !== ($file = readdir($handle)) || $i < 5) {
            if (file === '.' || $file === '..') {
                continue;
            }
            if (is_file($dir . $file)) {
                $zip->addFile($dir . $file, $file);
            } elseif (is_dir($dir . $file)) {
                zipDir($dir . $file, $zip, $relative_path . $file);
            }
            $i++;
        }
    }
    closedir($handle);
}

createZipFromDir($location.$yesterday, 'files.zip');

?>

该脚本基本上每天将文件夹归档到ZIP文件中。当我用小文件测试时,我可以确认脚本工作正常。但这一次它试图存档几百mb的数据。

我的php.ini文件中的max_execution_time设置为18000,这是正确的,因为它显示在我的phpinfo()文件中。

有谁知道我为什么会收到500内部错误?

彼得

0 个答案:

没有答案