Андрей Фамилов


Андрей Фамилов

  • Андрей Фамилов Андрей Фамилов 18 октября 2019 22:19 #

    Попробовал по Вашему совету, убрал все плагины, которые frontend api, но проблема осталась. Еще раз сделал чистый эксперимент: у меня есть установленный через инсталлер плагин с работающим api. Я там вырезал вообще все, оставив только:

    shopApioptPluginFrontendApi.controller.php

    с содержимым:

    class shopApioptPluginFrontendApiController extends waViewController {    public function execute()    {        echo "Check: ";     }  }

    роутер: 

    'apiopt/api/<format:[^/]+>/<obj:[^/]+>/' => 'frontend/api',

    подключен:

    'frontend' => true,

    в plugin.php

    и

    'apiopt' => true,

    в wa-config/apps/shop/plugins.php


    Эта конструкция работает, ВНИМАНИЕ(!) до момента, пока мы не переносим её на ЛЮБОЙ ДРУГОЙ сервер! Как только я копирую все это и устанавливаю без инсталлера, роутер перестает работать. 404 ошибка и все! Кэш сбрасываю. 

    Скажите, может быть есть какие-либо скрытые настройки при переносе плагина, может я что-то упускаю из вида? Если нет, то - это 100% глюк webasyst.

    И что с этим делать?

    в ответ на Глюк Webasyst? Проблема с роутером плагина

  • Андрей Фамилов Андрей Фамилов 16 октября 2019 17:37 #

    Сбрасывал неоднократно, если речь идет об инсталлере

    в ответ на Глюк Webasyst? Проблема с роутером плагина

  • Андрей Фамилов Андрей Фамилов 16 октября 2019 17:35 #

    Имя плагина в данном случае я сделал в качестве примера, до этого у меня было несколько вариантов разных. Ради эксперимента проработал пример в мануале - тоже не вышло. После чего взял работающий плагин из webasyst-магазина Api оптовика - https://www.webasyst.ru/store/plugin/shop/apiopt/, в котором есть реализованный роутер, инсталлировал его через installer вырезал оттуда вообще все, оставив только routing.php + 

    shopApioptPluginFrontendApi.controller.php
    

    c содержимым:

    class shopApioptPluginFrontendApiController extends waViewController {    public function execute()    {        echo "Check: ";     }  }

    И прикол в том, что эта конструкция работает, но только (!) на том сервере, где она изначально инсталлирована через installer. Установка на другой сервер через копирование РАБОТАЮЩЕГО кода плагина (уже урезанная версия до роутера и контроллера по сути) так же дает ошибку 404, хотя копирую как плагин + подключаю в  wa-config/apps/shop/plugins.php

    Ну и если пойти от обратного и там, где этот код работает рядом поставить собственный плагин и, по сути, повторить схему кода (изменив имя плагина + контроллера + класса + немного перенастроить роутинг, то собственный плагин (не через инсталлер установлен) так же дает ошибку 404.

    То есть я прихожу к мысли, что если плагин со своим роутингом ставится через инсталлер, то все работает. А вот если делаешь без инсталлера, то собственный роутер не срабатывает. Или я где-то что-то упускаю из вида.

    в ответ на Глюк Webasyst? Проблема с роутером плагина

  • Андрей Фамилов Андрей Фамилов 16 октября 2019 14:24 #

    plugin.php

    return array(    'frontend' => true,    'backend' => true,    'handlers' => array(    ), ); 

    в ответ на Глюк Webasyst? Проблема с роутером плагина

  • Андрей Фамилов Андрей Фамилов 16 октября 2019 14:22 #

    в plugin.php выставлено:

    'frontend' => true,

    а в wa-config/apps/shop/plugins.php

    'myplagin' => true,

    в ответ на Глюк Webasyst? Проблема с роутером плагина