Ошибка соединения с модулями

Тема в разделе "Обо всём", создана пользователем DiMoss, 21 мар 2016.

  1. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    Приветствую!

    Заимел проблему соединения некоторых модулей с сервером. Сначала модуль 1с перестал авторизироваться. Отключил, включил - заработал.
    Затем модуль ocSeo перестал выполнять свои функции. Отключил, а вот обратно включить не могу. Решил его удалить и загрузить заново, но загрузчик пишет что не может соединиться с сервером.

    Если один модуль "конектится", то не "конектится" другой!
     
    Последнее редактирование: 21 мар 2016
  2. Vlad

    Vlad Эксперт

    Сообщения:
    4.146
    Симпатии:
    1.003
    Проблемы на стороне хостинга видимо? нет?
     
  3. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    Возможно. Как проверить то? Я просто не могу понять "суть" проблемы. Как связаны модуль 1с и модуль ocSeo.
    Единственное у них достаточно заморочоенная система - сначала скачать загрузчик, и через него уже качается модуль.
    Сам модуль получается работает напрямую с движкой, а вот загрузчик соединяется с какими то внешними серверами.
     
  4. Ravilr

    Ravilr Специалист

    Сообщения:
    3.961
    Симпатии:
    1.080
    загрузчик не работает после установки модуля. На то он и загрузчик.
    Напишите подробнее, как это
     
  5. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    1)Установил модуль ocSeo, настроил, порадовался!

    2)Решил выложить модельный ряд товара. Внёс позиции в номенклатуру, начал выгружать - Не удалось установить соединение.

    3)Отключил модуль 1с, включил заново - соединение установилось. Но пришлось очистить сайт от продуктов и залить их снова. Сделал!

    4)Полез в ocSeo, чтобы сгенерировать url, а оно не работает. Генерирует но на сайте ничего не происходит!

    5)Начал чесать репу и пробовать всякие варианты. Удалил модуль, попытался загрузить снова, но загрузчик выдаёт ошибку соединения. Включил, выключил - заработал! Но теперь 1с на конектится.

    В итоге заметил что если что то одно не работает, то другое не хочет. И если то, что не работает выключить и включить, то оно заработает но то что работало перестанет.
     
  6. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    В менеджере дополнений у меня всего 2 дополнения - ocSeo и загрузчик.
    Жму сброс - начинает работать 1с но пропадают урлы.
    Жму обновить - появляются урлы, но перестаёт работать 1с.
    И вот не пойму где конфликт.
     
  7. Vlad

    Vlad Эксперт

    Сообщения:
    4.146
    Симпатии:
    1.003
    надеюсь понимаете что модуль это не только менеджер дополнений или Модификаторы? (как же сложно оперировать терминами когда у человека другой перевод)

    конфликт в изменении кода. Один окмод меняет одно, другой другое. Смотрите логи и ошибки.
    У каждого модуля есть автор, попросите помочь если есть ошибки.
     
    DiMoss нравится это.
  8. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    За журнал ошибок отдельное Спасибо! Совсем забыл про него! Там было немного мелких ошибок. Исправил! Мелочь, но приятно!

    А по теме.... При попытке соединения 1с с сайтом возникает ошибка...
    Код:
    2016-03-21 18:46:49 - PHP Notice:  Use of undefined constant VERSION - assumed 'VERSION' in /home/host1426479/*/htdocs/www/system/addist/startup.php on line 49
    При чём тут загрузчик Addist понять сложно)))) Ругается на...
    PHP:
    if (version_compare(VERSION,'1.5') == -1)
    Есть вот такая конструкция...
    PHP:
    // Detecting oc version
    if (version_compare(VERSION,'1.5') == -1)
    {
        
    $oc_version '1.4.9.x';
    }
    elseif (
    version_compare(VERSION,'2.0') == -1)
    {
        
    $oc_version '1.5.x';
    }
    else
    {
        
    $oc_version '2.x';
    }
    if (!
    defined('OC_VERSION'))
    {
        
    define('OC_VERSION',$oc_version);
    }
    Ввиду того, что я знаю версию движки, оставил только это...
    PHP:
    $oc_version '2.x';
    define('OC_VERSION',$oc_version);
    И теперь 1с и сео-модуль могут работать одновременно)))). Что уже хорошо! Но всё же по какой причине они пересекаются в данном коде остаётся загадкой. Это надо уже у автора видимо выяснять.
     
    Последнее редактирование: 9 июл 2016
  9. Ravilr

    Ravilr Специалист

    Сообщения:
    3.961
    Симпатии:
    1.080
    Сейчас позовем Мумтоза, пусть посмотрит ))
     
  10. Mumtoz

    Mumtoz Новичок

    Сообщения:
    9
    Симпатии:
    10
    Добрый день! Приношу свои извинения за задержку.
    Такая проблема связана с тем, что разработчик этого модуля интеграции в своем коде не добавил define('VERSION', 'Х.Х.Х.Х');, добавьте этот код или пришлите доступы от фтп нам по имеилу, мы вам поможем.
     
  11. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    @Mumtoz , Вы имеете ввиду модуль интеграции 1с?
     
  12. Mumtoz

    Mumtoz Новичок

    Сообщения:
    9
    Симпатии:
    10
    Да. Только не знаю в каком файле. У вас есть файл export/exchange1c.php? Если есть, пришлите этот файл по имеилу на dev@addist.ru, я отвечу где надо указать версию opencart(кстати версию вашего опенкарта тоже напишите)
     
  13. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    В этом файле есть код определения версии...
    PHP:
    // Определяем версию системы
    if ($handle fopen($_SERVER['DOCUMENT_ROOT'].'/index.php''r')) {
        
    $buffer fread($handle2048);
        
    fclose($handle);

        if (
    strpos($buffer'OCSHOP')) {
            
    define('CMS''ocShop');
        } elseif (
    strpos($buffer'OCSTORE')) {
            
    define('CMS''ocStore');
        } else {
            
    define('CMS''OpenCart');
        }

        if (
    preg_match("/[\d](\.[\d])+/"$buffer$matches)) {
            
    define('VERSION'$matches[0]);
        } else {
            
    define('VERSION''2.0.3.1');
        }
    }
    Напишу разработчику модуля. Править код в данной версии не вижу смысла, ибо beta-версия.

    Если проблема не в модуле addist, то и ладно! Сейчас всё работает.

    Ну я надеюсь что те изменения в файле system/addist/startup.php, которые я сделал не повлияют на работу модуля в целом.
     
  14. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    Обнаружил ещё один косяк - ошибки не выводятся на экран и не пишутся в лог.
    Если нажать сброс в Менеджере дополнений то перестаёт работать ocSeo, но начинает показывать ошибки(если они есть) и пишет их в лог.
     
  15. Vlad

    Vlad Эксперт

    Сообщения:
    4.146
    Симпатии:
    1.003
    А как это все связано между собой )) Вы нажали сброс, очистив папку модифицированных файлов и хотите чтобы небыло ошибок ??? А как дополнение то будет работать )) Это же тоже самое, что "Я открутил одно колесо и теперь машина плохо едет. Почему ?"
     
  16. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    @Vlad , Вы не до конца меня поняли. Проблема не в том, что модули перестают работать, а в том что когда они работают, то ошибки не выводятся на экран и не пишутся в лог. Вообще любые ошибки, которые даже и не связаны с этими модулями. Т.е. данный функционал пропадает как таковой.
    Как это связано между собой я не в курсе! Но у меня этот модуль явно конфликтует с системой.
     
  17. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    В логах модификаторов есть вот это...
    Код:
    MOD: OcSEO Plus - One click solution v0.10.3.4 [by addist.ru]
    CODE: $this->error = $error;
    LINE: 38
    Может ли происходить то, что данный модуль как бы "съедает" ошибки? Ну или что то типа этого!

    Чтобы не было путаницы, приведу пример - вывожу в шаблон несуществующую переменную. Система должна ругаться! Но она молчит. Просто не показывает её. И в лог ошибок ничего не пишет. Сбрасываю модификаторы - ошибка высвечивается и уходит в лог! В модификаторах только один модуль - ocSeo.
     
  18. Vlad

    Vlad Эксперт

    Сообщения:
    4.146
    Симпатии:
    1.003
    указанная строчка к выводу ошибок вроде не относится. Напишите автору @Mumtoz и узнаете, вдруг оно и в правду что то делает.
     
  19. DiMoss

    DiMoss Продвинутый пользователь

    Сообщения:
    862
    Симпатии:
    236
    Списался с разработчиком! Оказывается надо просто в настройках модуля во вкладке Сервис включить Режим отладки.
    Тогда система начинает транслировать имеющиеся ошибки!