Opencart 3: Export-Import – ошибка Could not close zip file php://output

Сообщение об ошибке указывает на то, что библиотека PHPExcel не смогла записать файл во временную директорию /tmp, так как скорее всего не смогла ее определить.

Можно выяснять почему скрипт /system/library/export_import/Classes/PHPExcel/Shared/File.php не получает значение глобальной переменной upload_tmp_dir из php.ini, но эта проблема на разных серверах может решать по разному. А можно узнать путь к временной директории и прописать его в скрипт принудительно. Для этого:

1. Узнаём значение upload_tmp_dir из php.ini. Кто не не знает как это делать, просто создаете в корне сайта файл info.php с содержимым

<?php phpinfo(); ?>

Потом вызываете его http://сайт.ру/info.php и ищите параметр upload_tmp_dir

2. Далее открываем выше упомянутый /system/library/export_import/Classes/PHPExcel/Shared/File.php, идём в конец файла realpath и на строке около 178 находим вывод

return realpath(sys_get_temp_dir());

Комментируем его (мало ли, пригодится) и вместо него пишем:

return “значение переменной upload_tmp_dir”;

например:

return “/home/admin/tmp”;

Вот и все, теперь пробуйте делать экспорт.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *