Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Не загружается файл xml в netshop больше 3х метров

08.02.2012, 13:39
Константин
Константин

Зарегистрирован:
2010-07-20
Сообщений: 210

Добрый день.
Возникла проблема при загрузке xml-файла в импорте интернет-магазина. На локалке файл загружался размером и 8 метров, грузился пол-часа, но процесс завершался удачно.
На серваке ни в какую не хочет загружаться. Секунд через 40–60 вылетает 504 ошибка. Понятно, что не хватает времени, но установлено-ведь 5 минут, а ошибка вылазит меньше, чем через минуту.

На сервере установлено:
max_input_time = 300
memory_limit = 128M

чего ещё покрутить можно?

orlovkn
08.02.2012, 20:00
resident
Веб-группа «Дабл Ю»

Зарегистрирован:
2005-01-10
Сообщений: 336

для обрабатывающего скрипта поставить
ignore_user_abort(TRUE);
set_time_limit(0);
504 я так понимаю отдает nginx тк недожидается ответа от apache, если сервер не ваш то тут наверно ничего не сделать, но через некоторое время можно попробовать посмотреть результат, если все нормально, то дальнейшая обработка пойдет без вашего участия.
если сервер свой то можно обращаться напрямую на порт апача, то гда по таймауту не отвалится.

еще вариант запускать это дело из консоли, например написав скрипт-прослойку чтоб создавал нужные переменные для эмуляции загрузки файла и не менять код нетката
10.02.2012, 08:46
Константин
Константин

Зарегистрирован:
2010-07-20
Сообщений: 210

а есть варианты того, почему модуль так себя ведёт?

orlovkn
14.02.2012, 20:39
Thoth

Зарегистрирован:
2008-08-14
Сообщений: 3

Столкнулся с подобным на masterhost на недорогом тарифе (дорогой не пробовал).
На шестой-седьмой минуте импорт просто прекращался без ошибок. 1с при этом пишет что все ОК. Поэтому заметили что не все товары обновляются на сайте только через какое-то время. Кол-во товаров обновленных на сайте было разным в зависимости от нагрузки хостинга.

Подняли max_execition_time до 600 (10мин), но не помогло. Поняв что на стороне хостинга решить проблему не легко, решили ее на нашей стороне. Написали выгрузку из 1с частями: 1000 товаров, потом следующие 1000 и т.д. Решение не очень красивое, но работает. 1000 - кол-во товаров заведомо загружающихся на сайт без ошибок.
198 196 2012-02-14 20:39:26 11883
Описание проекта