Обмен данными с «1С:Управление торговлей»

Возникла проблема с настройкой обмена данными между "Управление
торговлей 8.3", редакция 10.3 (10.3.43.1) и Shop-Script
(обновление от 15.02.2018).

Копирую ссылку (рис1), как указано в инструкции, в 1с (рис2) - пишет получен пустой ответ от сервера. Что может быть не так?

По инструкции говорится, что поля должны быть пустыми. Может, что не
так с доменным именем? И еще вопрос - Если Shop-Script установлен на сервере, где PHP работает в качестве CGI,
то для работы авторизации при обмене информацией с «1С» необходимо наличие модуля mod_rewrite для веб-сервера Apache.
В этом случае в начало файла .htaccess в каталоге установки скриптов
добавьте следующий код: ...... Где можно найти этот каталог установки
скриптов?

11 ответов

  • 1

    У вас сайт работает на HTTPS?

    Пробовали в 1С, в адресе сайта поставить https вместо http?

  • 1
    Дмитрий Тихонович 22 февраля 2018 13:41 #

    Пробовали и не раз! в начало файла .htaccess в каталоге установки скриптов
    добавили код RewriteEngine On
    RewriteCond %{HTTP:Authorization} !^$
    RewriteCond %{REQUEST_URI} !(http_auth)
    RewriteRule ^(.*)$ $1?http_auth=%{HTTP:Authorization} [QSA]


    Может это зря?

    • +1

      1С 8.3 с Управление торговлей, редакция 11.2 — точно работает обмен через HTTPS, только в адресе сайта в 1С нужно указать именно https и включить настройку в Сайте «Перенаправлять на HTTPS» (без модификации файла .htaccess).


      А вот 1С:Предприятие 8.2 с "Управление торговлей", редакция 10.3 (10.3.45.2) — обмен работает только через HTTP пока не научить 1С доверять SSL-сертификату вашего сервера, инструкция:

      https://infostart.ru/public/79494/

      (обязательно изучите комментарии к статье, нужно добавлять родительские сертификаты, причем все из цепочки, если их несколько)

      • +1
        Дмитрий Тихонович Дмитрий Тихонович 26 февраля 2018 12:27 #

        Алексей, добрый день! Ситуация прежняя. Может, что не так с адресами сайта? Скриншоты прилагаю.mod_rewrite - почистил.

        • +1

          Попробуйте в плагине 1С выключить и выключить обмен, и скопировать новый адрес скрипта обмена в 1С (и добавить https), потом еще в настройках Инсталлера очистите кеш и запустите обмен в 1С.


          Раньше у вас обмен работал через http с кириллическим названием домена сайта или первый раз запускаете обмен?


  • 1
    Дмитрий Тихонович 26 февраля 2018 14:36 #

    Первый раз. Только получается у нас имя доменное по-русски, а ссылку выдает ту, что выдает! http://xn--54--1dd8d.xn--80asehdb/cml1c/a2293786-8... Сам же сайт https://54-фз.онлайн

  • 1
    Дмитрий Тихонович 27 февраля 2018 08:48 #

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

    1C code 403
    ## wa-apps/shop/plugins/cml1c/lib/actions/frontend/shopCml1cPluginFrontend.controller.php(61)
    #0 wa-system/controller/waController.class.php(21): shopCml1cPluginFrontendController->execute()
    #1 wa-system/controller/waFrontController.class.php(229): waController->run(NULL)
    #2 wa-system/controller/waFrontController.class.php(164): waFrontController->runController(Object(shopCml1cPluginFrontendController), NULL)
    #3 wa-system/controller/waFrontController.class.php(58): waFrontController->execute('cml1c', 'frontend', NULL)
    #4 wa-system/waSystem.class.php(727): waFrontController->dispatch()
    #5 wa-system/waSystem.class.php(487): waSystem->dispatchFrontend('cml1c/a2293786-...')
    #6 index.php(7): waSystem->dispatch()
    #7 {main}
    /home/fbbbyenh203405/kkt.hostenko.com/wa-apps/shop/plugins/cml1c/lib/actions/frontend/shopCml1cPluginFrontend.controller.php around line 61
    56 * @var shopCml1cPlugin $plugin
    57 */
    58 $plugin = wa()->getPlugin('cml1c');
    59 $uuid = $plugin->uuid();
    60 if (empty($uuid) || (waRequest::param('hash') != $uuid)) {
    >>61 throw new waRightsException('1C');
    62 }
    63 $type = waRequest::get('type');
    64
    65 try {
    66 switch ($type) {
    GET
    array()
    Params
    array(
    'app' => 'shop',
    'theme' => 'buysimply',
    'theme_mobile' => 'buysimply',
    'locale' => 'ru_RU',
    'ssl_all' => '1',
    'title' => 'Интернет-магазин кассовых аппаратов онлайн',
    'meta_keywords' => 'Интернет-магазин кассовых аппаратов онлайн, ккт онлайн купить в кредит, кассы для ИП',
    'meta_description' => 'Интернет-магазин кассовых аппаратов онлайн, ккт онлайн в кредит, кассы для ИП',
    'og_title' => '',
    'og_image' => '',
    'og_video' => '',
    'og_description' => '',
    'og_type' => '',
    'og_url' => '',
    'url_type' => '0',
    'type_id' => '0',
    'currency' => 'RUB',
    'public_stocks' => '0',
    'drop_out_of_stock' => '0',
    'payment_id' => '0',
    'shipping_id' => '0',
    'hash' => 'a2293786-8592-41d6-b171-1390b87e32c2',
    'plugin' => 'cml1c',
    'module' => 'frontend',
    )

  • 1

    По деталям ошибки видно что плагину 1С не подходит hash (код в конце адреса синхронизации). Скорее всего вы выключили и включили обмен в плагине 1С, но используете еще старый адрес, который уже не подходит.

    И большая просьба для безопасности больше не выкладывайте в открытый доступ этот hash или весь адрес скрипта синхронизации.


    Убедитесь что вы правильно скопировали в 1С адрес скрипта синхронизации.
    Если проблемы останутся, то сделайте запрос в техподдержку через Центр заказчика, нужно будет делать диагностику. Сюда не публикуйте больше адрес скрипта синхронизации или
    hash.


    Домен с кириллическим названием для обмена можно использовать.

    • +1
      Дмитрий Тихонович Дмитрий Тихонович 13 марта 2018 10:35 #

      Алексей, добрый день!

      Попробовал инструкцию. Если сайт работает на HTTPS, а «1С» не поддерживает подключение по HTTPS #

      Использовал новый адрес - результат тот-же. Помогите пожалуйста - очень нужно решение.

  • 1

    Если вы выполнили действия точно по этой инструкции https://www.shop-script.ru/help/25/shop-script-5-cml1c/#https-not-supported (в итоге такой формат адреса обмена https://domain.ru/cml1c/cml1c/hash/ ) и у вас не работает обмен по HTTP, то сделайте запрос в поддержку, нужна диагностика.



Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите