Що робити, якщо Mergado не може завантажити вхідний фід#
Коли Mergado не вдається завантажити ваш вхідний фід, проєкт не перегенеровується, а на виході залишаються старіші дані. У більшості випадків причина не в Mergado, а в тому, що сервер із вашим фідом відхиляє запит на його завантаження або не відповідає на нього. Ця стаття допоможе вам з’ясувати, що відбувається, і підкаже, як проблему розв’язати – в ідеалі так, щоб ви знайшли причину самостійно й не мусили чекати на відповідь підтримки.
Інструкція стосується як вхідного фіду проєкту, так і файлів, які завантажує правило Data file import.
Як з’ясувати, що саме сталося#
Не робіть висновків лише з того, що „проєкт не працює“. Mergado записує кожну спробу завантажити фід:
- У Mergado відкрийте проєкт, у якому виникла проблема.
- Перейдіть на сторінку History.
- У полі Event type відфільтруйте Product import або Scheduled product import, якщо проєкт перегенеровується автоматично.
Ви побачите кількість невдалих спроб і повідомлення до них. У найчастіших помилок (401, 403, 404, 500, 502, 503 і 504) повідомлення конкретне й одразу підкаже, що сталося, – у такому разі дійте за таблицею нижче. Якщо ви бачите лише загальне повідомлення „Unknown error“, переходьте одразу до розділу Що означає „Unknown error“.
Що означають окремі помилки#
| Повідомлення в History | Що відбувається | Де шукати рішення |
|---|---|---|
| Доступ до віддаленого файлу заборонено (401 Unauthorized). | Фід захищено ім’ям користувача та паролем, а Mergado їх не має або вони неправильні. | Перевірте облікові дані в URL-адресі фіду або в розширенні Mergado Drive. Якщо ви змінили їх на сервері, змініть їх і в Mergado. |
| Віддалений сервер відмовився відповісти (403 Forbidden). | Сервер знає про Mergado, але відмовляє йому в доступі. Найчастіший випадок. Зазвичай причиною є білий список IP-адрес, WAF (вебфаєрвол, який фільтрує трафік на ваш сайт), Cloudflare або блокування автоматизованого завантаження. | Дозвольте IP-адреси Mergado. Якщо ви використовуєте Cloudflare, дійте за цією інструкцією. |
| Віддалений файл не існує (404 Not Found). За вказаною адресою не знайдено жодних даних. | За вказаною адресою немає жодного файлу. Фід перемістили, перейменували, або в адресі є друкарська помилка. | Відкрийте адресу фіду в браузері. Якщо не знайдете його й ви, отримайте актуальну адресу у своїй платформі інтернет-магазину й виправте її в налаштуваннях проєкту. |
| На віддаленому сервері сталася невизначена помилка (500 Internal Server Error). | Сервер із фідом натрапив на внутрішню помилку, найчастіше не вдалося саме генерування фіду. | Спробуйте відкрити адресу в браузері. Якщо помилка не зникає, розв’язуйте її зі своїм хостингом або постачальником інтернет-магазину. |
| Віддалений сервер не зміг відповісти (502 Bad Gateway). | Сервер перед вашим інтернет-магазином (проксі, CDN) не отримав коректної відповіді від сервера, який генерує фід. | Зазвичай ідеться про тимчасовий збій. Якщо помилка не зникає, зверніться до свого хостингу. |
| Віддалений сервер не відповів (503 Service Unavailable). | Сервер перевантажений, на технічному обслуговуванні або тимчасово недоступний. | Дочекайтеся наступної спроби завантаження. Якщо помилка повторюється, розв’яжіть зі своїм хостингом питання продуктивності сервера або запланованого обслуговування. |
| Віддалений сервер не зміг відповісти (504 Gateway Timeout). | Генерування фіду тривало надто довго, і сервер не встиг надіслати відповідь. | Попросіть хостинг або постачальника інтернет-магазину пришвидшити генерування фіду або попередньо генерувати його у файл. |
WAF (Web Application Firewall) – це фільтр безпеки, який перевіряє запити до вашого сайту й блокує підозрілі. Він буває складовою хостингу або сервісів на зразок Cloudflare і іноді помилково блокує й автоматизоване завантаження фіду.
Що означає „Unknown error“#
Для інших помилок History не показує конкретного опису, а лише загальне повідомлення „Unknown error“. Це стосується передусім таких випадків:
- 429 Too Many Requests – сервер обмежує кількість запитів, і завантаження фіду в ліміт не вмістилося.
- Timeout (перевищення часу очікування) – сервер узагалі не відповів, або встановлення з’єднання тривало надто довго.
- Помилка сертифіката / SSL – сервер має недійсний, прострочений або ненадійний сертифікат.
Точний код і причину з History в такому разі не дізнаєтеся – їх бачить лише наша технічна підтримка. Перш ніж їй написати, спробуйте перевірити причину самостійно – у більшості випадків ви знайдете її, не чекаючи на відповідь:
-
Перевірте завантаження фіду так, як його бачить Mergado. Mergado завантажує фід не через браузер, а автоматизовано – за допомогою інструмента curl з ідентифікацією (User-Agent)
MergadoBot. Такий самий запит ви можете надіслати й самі. У терміналі (macOS, Linux, Windows 10 і новіші) виконайте:curl -I -A "MergadoBot" "https://adresa-vashoho-fidu"- У першому рядку відповіді ви побачите HTTP-код (наприклад,
HTTP/2 200,403,429або503). За ним ви визначите причину, навіть якщо History показує лише „Unknown error“. - Відповідь містить заголовок
cf-mitigated: challenge→ фід блокує Cloudflare, дійте за інструкцією для Cloudflare. - Команда нічого не повертає або завершується лише через тривалий час → це відповідає тайм-ауту.
- Команда завершується помилкою сертифіката → ідеться про помилку SSL, розв’яжіть питання оновлення сертифіката зі своїм хостингом.
Тест виконується з вашої IP-адреси, а не з IP-адреси Mergado. Якщо він повертає
200, але Mergado завантажити фід не вдається, сервер, найімовірніше, блокує саме IP-адресу Mergado – перевірте це в лозі (наступний крок) або у свого хостингу. - У першому рядку відповіді ви побачите HTTP-код (наприклад,
-
Перевірте власний access/error лог хостингу (в адмініструванні вашого хостингу – на відміну від нашої History там ви побачите справжній HTTP-статус). Знайдіть у ньому час невдалої спроби за History і шукайте запити з IP 81.31.39.112.
- Запиту там немає зовсім → його зупинили раніше, ніж він дійшов до вашого застосунку (фаєрвол, WAF, рівень мережі) → це відповідає тайм-ауту.
- Запит там є, і ви бачите конкретний код (наприклад, 429) → ви знаєте точну причину, не чекаючи на нас. У разі помилки 429 попросіть адміністратора сервера або хостинг збільшити ліміт для IP-адреси Mergado.
-
Порівняйте час останнього успішного й першого невдалого запису в History. Це допоможе пов’язати проблему з конкретною зміною – новим правилом безпеки, увімкненням Cloudflare, міграцією хостингу або оновленням сертифіката.
Якщо й так причину не знайдете, напишіть нам на mergado@mergado.com – додайте посилання на проєкт, адресу фіду та час, коли виникла проблема. Лише після такої перевірки ми знайдемо для вас код і точну причину в адмініструванні.
Особливий випадок: раніше працювало, а потім перестало, хоча я нічого не змінював(-ла)#
Таке трапляється частіше, ніж можна подумати, і майже ніколи це не помилка на боці Mergado. Типові причини:
- Ваш хостинг запровадив нові правила безпеки. Реальний випадок: великий чеський хостинг запровадив нове правило для виявлення підозрілої комунікації й помилково оцінив як ризиковану також комунікацію Mergado. Тим самим він заблокував завантаження фідів для всіх інтернет-магазинів на своїх серверах, доки ми його не попередили.
- Ви увімкнули Cloudflare або змінилися його налаштування.
- Закінчився строк дії сертифіката.
- Ви мігрували хостинг або змінилася IP-адреса сервера, і білого списку там уже немає.
- Змінився пароль або хеш в адресі фіду, наприклад після оновлення інтернет-магазину.
Як це розпізнати: в History проєкту знайдіть останнє успішне завантаження й порівняйте його з першим невдалим. Час, коли все зламалося, – найцінніша інформація і для вас, і для вашого хостингу.
Як діяти#
- Протестуйте фід так, як його завантажує Mergado – командою
curl -I -A "MergadoBot" "https://adresa-vashoho-fidu"(докладніше в розділі Що означає „Unknown error“). Самого лише відкриття фіду в браузері недостатньо: браузер може завантажити фід, навіть якщо сервер блокує автоматизоване завантаження. - Подивіться в History проєкту, яка помилка повторюється. Якщо це конкретне повідомлення (401, 403, 404, 500, 502, 503 або 504), знайдіть його в таблиці вище. Якщо це „Unknown error“, дійте за розділом Що означає „Unknown error“.
- Перевірте білий список IP-адрес. Mergado завантажує вхідний фід з адреси 81.31.39.112. Якщо ви використовуєте розширення, додайте також їхні IP-адреси.
- Переконайтеся, що фід не захищено кількома способами одночасно. Поєднання білого списку й хешу в адресі – часте джерело проблем, зазвичай у фідів із Shoptet.
- Якщо ви використовуєте Cloudflare, налаштуйте виняток за окремою інструкцією. Самого лише додавання IP-адреси до білого списку там недостатньо.
- Напишіть своєму хостингу, якщо нічого з наведеного вище не допомогло. Зазначте, що йдеться про легітимне автоматизоване завантаження товарного фіду, і попросіть розблокувати IP-адресу 81.31.39.112. Додайте час, коли завантаження перестало працювати.
- Зверніться до нашої підтримки, якщо не впевнені. Напишіть на mergado@mergado.com і додайте посилання на проєкт, адресу фіду та час, коли виникла проблема.
Часті запитання#
Чи означає помилка завантаження, що я втрачу дані на виході?#
Ні. Якщо завантаження не вдасться, Mergado залишить дані з останнього успішного імпорту – якщо такий уже відбувся. Вихідний фід залишиться доступним, але міститиме старішу інформацію, доки завантаження знову не вдасться. Якщо фід не вдалося завантажити жодного разу (наприклад, у щойно створеному проєкті), даних на виході поки що немає.
Чому фід не завантажується, хоча в браузері він працює?#
Браузер і Mergado звертаються до фіду по-різному. Mergado завантажує фід автоматизовано – за допомогою інструмента curl з ідентифікацією MergadoBot. Браузер уміє обробляти JavaScript і перевірки безпеки, автоматизоване завантаження – ні. Сервер також може розрізняти доступ за IP-адресою, а ваша відрізняється від адреси Mergado. Найчастіше за цим стоїть білий список IP-адрес, WAF або Cloudflare. Тому надійніший за браузер тест через curl, описаний у розділі Що означає „Unknown error“.
Чи стосується те саме правила Data file import? #
Так. Правило Data file import завантажує файл так само, як вхідний фід, тож і причини, і рішення однакові.
Як дізнатися, чи мене блокує хостинг?#
Надійна ознака – помилка типу тайм-аут, коли сервер узагалі не відповідає, хоча тест через curl з ідентифікацією MergadoBot з вашого комп’ютера проходить нормально. Якщо до того ж проблема з’явилася з дня на день без вашого втручання, блокування з боку хостингу дуже ймовірне. Зверніться до його підтримки.
Чому в History я бачу лише „Unknown error“, а не конкретний код?#
History показує конкретний опис лише для найчастіших помилок (401, 403, 404, 500, 502, 503 і 504). Інші помилки, наприклад 429, тайм-аут або проблема із сертифікатом, відображаються в ній загально як „Unknown error“ – точний код у такому разі бачить лише наша підтримка. Як перевірити причину самостійно, дізнаєтеся в розділі Що означає „Unknown error“.
Чи потрібно після розв’язання проблеми щось робити, щоб проєкт перегенерувався?#
Mergado автоматично намагається завантажити фід під час кожної наступної перегенерації. Якщо хочете перевірити результат одразу, запустіть перегенерацію в проєкті вручну.