Codeigniter $это->zip->загрузить()не работает


У меня на сервере есть каталог, полный PDF-файлов, которые загружаются пользователями.

Я пытаюсь создать метод, который загрузит весь каталог в виде zip-файла.

Я использую CodeIgniter. Простой код работал нормально, когда вес каталога составлял около 100 МБ. Но теперь, когда вес каталога составляет около 600 МБ, он просто не работает. (Я получаю белый пустой экран примерно через 10 секунд после загрузки).

Обратите внимание, что я новичок в Кодовый генератор...

public function download()
{
    $this->load->library('zip');
    $this->zip->read_dir('pdf/');
    $this->zip->download('Download.zip'); 


}

Спасибо вам!

Author: Tzahi Serruya, 2014-02-26

3 answers

Если до этого все работало нормально, возможно, вам придется изменить некоторые настройки в вашем php.ini. Попробуйте увеличить max_execution_time и/или memory_limit

 2
Author: Pattle, 2014-02-26 15:58:01

Вы можете попробовать разделить процесс создания zip-файла и процесс загрузки. Это может свести к минимуму требования к памяти и ограничению времени.

Сначала создайте zip-файл, а затем перенаправьте его в файл, чтобы загрузить его.

Дайте нам знать, как вы, наконец, это сделали.

 0
Author: fmgonzalez, 2014-02-26 16:04:32

Возможно, это связано с пропускной способностью вашего сервера. Попробуйте увеличить max_execution_time и/или memory_limit в PHP.INI-файл в конфигурации вашего сервера.

В linux/centos ->/etc/php.ini

В ubuntu ->/etc/apache2/../php.ini

Примечание: Не забудьте перезапустить сервер apache/httpd

Linux/centos ->перезапуск службы sudo httpd

Ubunut ->перезапуск службы sudo apache2

 0
Author: Anshul Garg, 2018-08-02 08:51:27