При попытке экспорта товаров в я.маркет возникает следующая ошибка. И получить ссылку тоже нельзя. Поставил на папки права 700
Экспортировано 144 категорий, 177 товарных предложения (общее время: 00 ч 00 мин 12 сек)
- YML-файл содержит ошибки
- LIBXML_ERR_WARNING #1549 [0:0]: failed to load external entity "/home/s/skyne7jf/velomatrix.ru/public_html/wa-data/protected/shop/plugins/yandexmarket/10.xml"
- LIBXML_ERR_ERROR #522 [0:0]: no DTD found!
27 комментариев
Если вы ставите права на директорию 700, то вы прекрасно понимаете, что эти права означают для владельца, группы и остальных пользователей.
Так как в итоге правильно сделать? и в этом ли ошибка ?
Владислав Горлов
Сформулируйте ответ более понятно. Что надо сделать, чтобы решить проблему?
У нас тоже у клиента такая проблема наблюдается. Хорошо, что магазин, еще на стадии тестирование.
Дополню. Пробовал изменить права на 777 <sub>для папки</sub> */yandexmarket/ , не помогло.
Бекенд открывается через https?
Файл формируется?
В директории wa-data/protected/shop/plugins/yandexmarket/ есть файл shops.dtd и достаточные ли у него права?
Бекэнд http но оформление и личный кабинет https.
YML файл не формируется. Для файла shops.dtd стоит права по умолчание 600.
Удаление и установка плагина не помогло.
попробуйте удалить файл shops.dtd, чтобы плагин заново его скопировал.
Удалил файл. Плагин пересоздал его но ошибка остается. YML файл не сформировался.
Тогда нужны еще логи ошибок: что-то еще не так
Логи хостинга пуст. Сайт вчера перенесли с одного хостинга на другой , логирование включен.
Логи от приложение вебсист "Логи"
Error #522[2] at [0:0]: no DTD found!
p.s. art-vmx это и есть наш клиент)
Включить логирование ошибок в приложении логи и посмотреть - что там появляется, пока под большим подозрением права на файлы/директории. Маловероятно, что это обусловлено версиями используемых библиотек.
Включил логирование ошибок PHP в приложение "Логи".
Вот тут можете скачать\посмотреть лог http://velomatrix.ru/php.log
Собственно, проблемный момент. Либо что-то не так с правами и владельцами файлов, либо с файловой системой (rename может работать некорректно на "сложных" и разнородных файловых системах). Либо во время экспорта файл был удален (очистка кеша/временных файлов может привести к этому — кнопка "очистить кеш" в Инсталлере делает в частности это)
Тех. поддержка beget написала, что в процессе экспорта возникает предупреждение:
[27-Feb-2017 22:37:37 Europe/Moscow] PHP Warning: rename(/home/s/skyne7jf/velomatrix.ru/public_html/wa-cache/temp/shop/plugins/yandexmarket/58b47ff46cc84.xml,/home/s/skyne7jf/velomatrix.ru/public_html/wa-data/protected/shop/plugins/yandexmarket/12.xml): No data available in /home/s/skyne7jf/velomatrix.ru/public_html/wa-system/file/waFiles.class.php on line 129
Причину возникновения которого пока установить не удалось.
Скриншот файловой системы хостинга. Для теста переместил файл waFiles.class с рабочего сайта не на рабочий, не помогло.
Временном папке файл генерируется но что то мешает, чтобы скопировать его на рабочую папку
Думаем проблема в стороне хостера beget.com или у вас сделано не универсально.
Подняли чистый движок на поддомене a.velomatrix.ru, такая же ошибка.
В файле waClass.php есть такой отрезок
Если заменить rename на copy все работает.
Но решение ли это?
Попробуйте изменить код в файле wa-apps/shop/plugins/yandexmarket/lib/actions/backend/shopYandexmarketPluginRun.controller.php:863
с
на
В файле waClass.php copy оставить и вернуть rename?
в этом методе нужен именно rename, иначе сломается многое другое.
Ошибка
Не выгружено ни одного товарного предложения, файл не создан.
В логах export.error.log
Больше похоже на проблему на стороне хостера (Аналогичная проблема всплывала как раз на beget), на остальных тысячах установок проблемы нету. Тем более на beta у вас код работает.
Очень ждем ответа. После правки файла
wa-apps/shop/plugins/yandexmarket/lib/actions/backend/shopYandexmarketPluginRun.controller.php
плагин дает ошибку
Хостер отправляет к вам, а вы отправляете нас на хостер.
Последние сообщение от хостера
На моей памяти был один хостинг, где скрипт мог создать файл, записать в него, после чего не мог открыть повторно даже для чтения — не было прав.
У вас на одном хостинге на одном аккаунте три установки, причем в одной из них код работает, а на двух других — нет. Следует сравнить код, права и структуру директорий, которые используются для временных и финальных файлов экспорта в этих установках. Большее телепатические возможности не дают посоветовать.
Сказать что проблема в коде движка будет не правильно.
a.velomatrix.ru - хостинг beget.com - экспорт не работает
velomatrix.ru - хостинг beget.com - экспорт не работает
beta.velomatrix.ru - хостинг timeweb.ru - экспорт работает. Заказчик перешел с timeweb на beget из за проблем создание эскизов но это уже другая проблема.
Подождем ответа от службы поддержки Beget.com
Вроде решили проблему экспорта.
Администратор хостинга beget.com сменил наш сервер. В другом сервере таких проблем не наблюдается.
Были на сервере vader4 перенесли на сервер robin.