Как исправить ошибку подключения через тонкий или веб-клиент при использовании разных версий платформы 8.3.13 и 8.3.14?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

В практике администрирования 1С часто встречается ситуация, когда инфраструктура предприятия работает на одной версии платформы (например, 8.3.13), но в какой-то момент база данных открывается более свежим релизом (например, 8.3.14). После этого пользователи тонких и веб-клиентов начинают получать странные ошибки: вместо привычного интерфейса или понятного сообщения об ошибке появляется окно с нечитаемыми символами (так называемая «абракадабра») и ссылкой на HTTP-протокол. Разберем подробно, почему это происходит и как вернуть работоспособность системы без потери данных.

Анализируем причину возникновения ошибки

Для начала проанализируем ситуацию. Почему база, которая прекрасно работала в режиме Толстый клиент, вдруг перестает отвечать Тонкому клиенту через веб-сервер? Проблема кроется в существенных внутренних изменениях, которые компания 1С внедрила, начиная с версии платформы 8.3.14.

Основная причина заключается в том, что платформа 8.3.14 при первом же открытии базы (даже файловой) производит скрытую конвертацию структуры таблиц внутри файла 1Cv8.1CD. Это происходит вне зависимости от того, какой Режим совместимости установлен в конфигурации. Даже если вы оставили режим 8.3.12 или 8.3.13, физический формат хранения данных уже изменился.

Когда Тонкий клиент версии 8.3.13 пытается подключиться к такой базе через веб-сервер Apache или IIS, на котором опубликован модуль расширения от версии 8.3.14, происходит конфликт протоколов. Сервер отправляет данные, упакованные по новым алгоритмам (часто с использованием обновленного сжатия GZIP или новых сетевых библиотек), а старый клиент не может их десериализовать. Результатом становится та самая строка нечитаемых символов в окне ошибки — это «сырой» поток данных, который клиентская часть не смогла распознать.

Шаг 1: Понижение режима совместимости

Первым делом рассмотрим, как подготовить конфигурацию к возврату на старую платформу. Если база уже была модифицирована в версии 8.3.14, нам необходимо явно указать платформе, что мы не планируем использовать функционал нового релиза.

Для этого выполним следующие действия:

  1. Запустим Конфигуратор, используя платформу версии 8.3.14.
  2. Откроем свойства корневого объекта конфигурации (самая верхняя строка в дереве метаданных).
  3. Найдем раздел «Совместимость» и параметр Режим совместимости.
  4. Установим значение 8.3.13 (или то, которое использовалось ранее в вашей сети).
  5. Сохраним изменения и обновим конфигурацию базы данных (клавиша F7).

Важно понимать: этого шага недостаточно для того, чтобы старый тонкий клиент заработал. Мы изменили логику работы метаданных, но физическая структура файла 1Cv8.1CD все еще остается в формате 8.3.14.

Шаг 2: Полный «откат» формата базы данных через .dt

Теперь разберем самый эффективный метод исправления физической структуры базы. Как отмечают эксперты, единственным надежным способом вернуть базу в формат, полностью понятный для версии 8.3.13, является использование транспортного файла выгрузки.

Выполним процедуру по шагам:

  1. В Конфигураторе версии 8.3.14 выберем пункт меню Администрирование — Выгрузить информационную базу....
  2. Создадим файл выгрузки с расширением .dt. Этот формат является универсальным и не содержит в себе особенностей физического строения таблиц конкретной версии платформы — только данные и метаданные.
  3. Закроем Конфигуратор и удалим (или переместим в архив) старый файл 1Cv8.1CD.
  4. Создадим новую пустую папку для базы данных.
  5. Запустим 1С под платформой 8.3.13 и создадим новую информационную базу в этой папке.
  6. Зайдем в Конфигуратор новой базы (используя версию 8.3.13).
  7. Выберем пункт меню Администрирование — Загрузить информационную базу... и выберем ранее созданный файл .dt.

Проанализируем ситуацию после загрузки: платформа 8.3.13 при импорте данных «с нуля» создаст файл 1Cv8.1CD в своем родном формате, который гарантированно поддерживается всеми компонентами этой версии, включая модули расширения веб-сервера.

Шаг 3: Настройка публикации на веб-сервере

После того как мы вернули базу на версию 8.3.13, необходимо убедиться, что публикация на веб-сервере также соответствует этой версии. Выясним причину, почему это критично: если в системе установлен Apache, он использует конкретную библиотеку (например, wsap24.dll), которая находится в папке bin установленной платформы 1С.

Проанализируем файл публикации default.vrd. В нем не должно быть параметров, специфичных для 8.3.14. Самый простой способ обновить публикацию:

  1. Открыть Конфигуратор версии 8.3.13 от имени Администратора.
  2. Перейти в Администрирование — Публикация на веб-сервере....
  3. Нажать кнопку «Опубликовать» (или сначала «Удалить публикацию», а затем «Опубликовать»).

Это перезапишет файлы в каталоге веб-сервера и свяжет его с правильной версией платформы.

Дополнительные рекомендации

Рассмотрим еще несколько важных моментов, которые помогут избежать повторения ошибки:

1. Очистка кеша на клиентских машинах.

Даже после исправления базы на сервере, локальные компьютеры пользователей могут хранить старые дескрипторы таблиц и настройки сеансов, полученные от версии 8.3.14. Рекомендуется полностью очистить временные файлы 1С в папках %AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8.

2. Синхронизация версий.

Для стабильной работы через веб-клиент или тонкий клиент по HTTP крайне желательно, чтобы версия Тонкого клиента, версия платформы на сервере и версия модуля расширения веб-сервера совпадали до последнего знака. Например, если сервер работает на 8.3.13.1644, то и клиенты должны использовать именно этот билд.

3. Проверка параметров конфигурации.

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

Подводя итог, можно сказать, что «нечитаемые символы» при подключении — это классический симптом несоответствия версий при передаче данных по HTTP. Использование механизма выгрузки/загрузки .dt между разными установленными версиями платформы является стандартным и самым надежным инструментом «понижения» версии базы данных в экосистеме 1С:Предприятие.

← На главную