Помогите разобраться с ошибкой плагина

Добрый день.

Вопрос касается плагина "Отчет по заказам за период" https://www.webasyst.ru/store/plugin/shop/ordersre...
Проблема заключается в экспорте отчета в эксель.

При нажатии на кнопку Экспорт открывается окно с таким содержимым:

Не удается получить доступ к сайту
Веб-страница по адресу https://www.hobbydelux.com/webasyst/shop/?plugin=ordersreport&action=export&customer=&state_id=all&timeframe=90&groupby=days, возможно, временно недоступна или постоянно перемещена по новому адресу.
ERR_INVALID_RESPONSE

Написал в разработчику плагина, от него тишина.

Пока ждал ответа разработчика, попросил помощи у системного администратора (у меня VDS сервер). Опытным путем выяснили, что проблема тем или иным образом связана с режимом работы php. При режиме работы "php как модуль апач" при попытке экспорта выдается страница с вышеуказанным содержанием, а логах сервера вот такая ошибка:

PHP Warning: ZipArchive::close(): Failure to create temporary file: \xd0\x9d\xd0\xb5\xd1\x82 \xd1\x82\xd0\xb0\xd0\xba\xd0\xbe\xd0\xb3\xd0\xbe \xd1\x84\xd0\xb0\xd0\xb9\xd0\xbb\xd0\xb0 \xd0\xb8\xd0\xbb\xd0\xb8 \xd0\xba\xd0\xb0\xd1\x82\xd0\xb0\xd0\xbb\xd0\xbe\xd0\xb3\xd0\xb0 in /var/www/hobbydelux/data/www/hobbydelux.com/wa-apps/shop/plugins/ordersreport/lib/vendors/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php on line 388

Если же php переключить в режим CGI экспорт в эксель начинает работать нормально.

Сисадмин видит проблему в том, что при работе php как модуль апач плагин не находит папку в которую собирается писать файл либо ее имя интерпретируется как то не так.

Отсюда вопрос, кто знает php и может помочь разобраться в какую папку плагин хочет писать файл? И понять эту проблему решать на стороне сервера или это чисто ошибка php файла плагина?

ХЕЛП! Хелпппппп





6 ответов

  • 1
    Алексей Webasyst 25 июля 2017 17:14 #

    Проверьте папку для временных файлов и права на неё.

    • +1
      Victor_BA Victor_BA 25 июля 2017 17:58 #

      О какой именно папке идет речь, как понять в какую папку пишет плагин?

  • 1
    Victor_BA 28 июля 2017 12:49 #

    Товарищи программисты и просто знатоки php, кто все же может помочь разобраться с ошибкой в php файле и подсказать в какую папку плагин пишет временные файлы:

    PHP Warning: ZipArchive::close(): Failure to create temporary file: \xd0\x9d\xd0\xb5\xd1\x82 \xd1\x82\xd0\xb0\xd0\xba\xd0\xbe\xd0\xb3\xd0\xbe \xd1\x84\xd0\xb0\xd0\xb9\xd0\xbb\xd0\xb0 \xd0\xb8\xd0\xbb\xd0\xb8 \xd0\xba\xd0\xb0\xd1\x82\xd0\xb0\xd0\xbb\xd0\xbe\xd0\xb3\xd0\xb0 in /var/www/hobbydelux/data/www/hobbydelux.com/wa-apps/shop/plugins/ordersreport/lib/vendors/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php on line 388

    Сам лежит тут: https://yadi.sk/d/c12XVzMx3LVYho

  • 2

    Оно вам пишет, что нет такого файла или каталога.....возможно, вы архивируете/открываете (работаете с) какой-то временный файл или хеш

    • +1
      Victor_BA Victor_BA 28 июля 2017 15:51 #

      Ошибка возникает при попытке экспорта отчета в эксель в плагине Отчет по заказам.

      Как решить эту проблему? Это ошибка плагина или настроек сервера?

  • 1
    Пока ждал ответа разработчика, попросил помощи у системного администратора (у меня VDS сервер). Опытным путем выяснили, что проблема тем или иным образом связана с режимом работы php. При режиме работы "php как модуль апач" при попытке экспорта выдается страница с вышеуказанным содержанием, а логах сервера вот такая ошибка: PHP Warning: ZipArchive::close(): Failure to create temporary file: \xd0\x9d\xd0\xb5\xd1\x82 \xd1\x82\xd0\xb0\xd0\xba\xd0\xbe\xd0\xb3\xd0\xbe \xd1\x84\xd0\xb0\xd0\xb9\xd0\xbb\xd0\xb0 \xd0\xb8\xd0\xbb\xd0\xb8 \xd0\xba\xd0\xb0\xd1\x82\xd0\xb0\xd0\xbb\xd0\xbe\xd0\xb3\xd0\xb0 in /var/www/hobbydelux/data/www/hobbydelux.com/wa-apps/shop/plugins/ordersreport/lib/vendors/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php on line 388 Если же php переключить в режим CGI экспорт в эксель начинает работать нормально.

    Готов предположить, что в этих режимах используются разные версии php.

    php как модуль апач - скорее всего PHP7

    php в режиме CGI - PHP5

    Посмотрите здесь в комментах

    Можно еще почитать по теме вот здесь

    И вообще это гуглится

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите