Я получаю 503 после копирования во многие файлы с помощью PHP

Я пытаюсь продублировать всю папку (очень большую) с помощью рекурсивной функции.

class Folder {
    static function copy (string $source, string $destination) {
        $dir = opendir($source);
        if (!is_dir($destination))
            mkdir($destination, 0755, true);

        while (($file = readdir($dir)) !== false) {
            if ($file != '.' && $file != '..') {
                if (is_dir($source .'/'. $file)) {
                    self::copy($source .'/'. $file, $destination .'/'. $file);
                }
                else {
                    copy($source .'/'. $file, $destination .'/'. $file);
                }
            }
        }
        closedir($dir);
    }
}

Этот метод копирует только часть папок/файлов и после этого какое-то время ничего не делает (более 30 секунд) и завершает процесс с ошибкой 503.

Я не знаю, почему он не может скопировать их все. Некоторые файлы слишком велики для PHP?

Изменить:

Я обнаружил, что скрипт не может пройти мимо копирования одного из файлов размером более 100M.

Как увеличить размер файлов, которые может копировать функция copy?

Изменить:

Я даже пробовал эти настройки, которые не помогли:

ini_set('memory_limit',         '-1');
ini_set('max_input_time',       '-1');
ini_set('max_input_vars',       '10000');
ini_set('max_execution_time',   5000);
ini_set('post_max_size',        '300M');
ini_set('upload_max_filesize',  '300M');

person Valentin Tanasescu    schedule 18.12.2019    source источник
comment
503 это внутренняя ошибка сервера. ваша проблема в ограничении памяти или в вашем коде. вы можете открыть показать ошибки, чтобы увидеть, в чем проблема. ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);   -  person ttrasn    schedule 18.12.2019
comment
max_input_time = 3600 попробуйте установить это   -  person Amit Sharma    schedule 18.12.2019
comment
Ошибки @ttrasn включены. Нет ошибки. 503 Служба временно недоступна не означает ошибку PHP.   -  person Valentin Tanasescu    schedule 18.12.2019
comment
@ValentinTanasescu, поэтому посмотрите файл error_log в каталоге вашего проекта.   -  person ttrasn    schedule 18.12.2019
comment
Я это сделал. Нигде нет ошибки PHP.   -  person Valentin Tanasescu    schedule 18.12.2019
comment
похоже на ошибку веб-сервера, если вы используете apache, см. stackoverflow.com/questions/9629566/   -  person Jean-Charles LUC    schedule 19.12.2019
comment
Спасибо за ответ @Jean-CharlesLUC. Дело не в max_execution_time. Речь идет о разрешении функции копирования с ограничением размера файла.   -  person Valentin Tanasescu    schedule 19.12.2019
comment
Как сделать так, чтобы функция копирования позволяла также файлы большего размера?   -  person Valentin Tanasescu    schedule 19.12.2019