Удаленный сервер вернул ошибку : (500) внутренняя ошибка сервера
Я использовал php-программу для загрузки csv-файла данных с сервера debian Linux. Это было работает нормально. При увеличении количества файлов данных возникает ошибка. Любой эксперт может помочь ?
Мой download.php программа на сервере указана ниже :
<?php
$the_folder = '/home/debian/dcuproc/data';
$zip_file_name = './download/data_dcuproc.zip';
класс FlxZipArchive расширяет ZipArchive {
публичная функция addDir($location, $name) {
$this->addEmptyDir($name);
$this->addDirDo($location, $name);
} // EO addDir;
частная функция addDirDo($location, $name) {
$name .= '/'; $location .= '/';
// Читать все файлы в Dir
$dir = opendir ($location);
в то время как ($файл = вызове readdir($dir будет)) {
если ($file == '.' || $file == '..') продолжить;
// Rekursiv, If dir: FlxZipArchive::addDir(), else ::File();
$do = (filetype( $location . $file) == 'dir') ? 'addDir' : 'addFile';
$this->$do($location . $имя файла . $файл);
}
}
}
$za = новый FlxZipArchive;
$res = $za->open($zip_file_name, ZipArchive::CREATE);
if($res === TRUE) {
$za->addDir($the_folder, basename($the_folder)); $za->close();
}
еще {
echo 'не удалось создать zip-архив';
}
заголовок('Content-Description: передача файлов');
заголовок('Content-Type: application/octet-stream');
заголовок('Content-Disposition: attachment; filename=data.zip');
заголовок('Content-Transfer-Encoding: binary');
заголовок('Expires: 0');
заголовок('кэш-управления: необходимо подтвердить');
заголовок('Pragma: public');
заголовок('Content-Length:' . filesize($zip_file_name));
ob_clean();
промывать();
если (функцию ReadFile($zip_file_name))
{
отменить связь($zip_file_name);
}
?>
Что я уже пробовал:
Я попытался уменьшить количество файлов. Это работает. Но на самом деле нам нужно заархивировать большое количество файлов и загрузить их на ПК, позвонив по телефону download.php от ПК.