Как исправить ошибку автоматического обновления платформы 1С через веб-клиент?

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

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

Анализируем структуру архива дистрибутива

Одной из самых частых причин возникновения ошибки является неправильная упаковка ZIP-архива. Рассмотрим ситуацию: вы скачали дистрибутив тонкого клиента, распаковали его и решили сжать обратно для размещения на сервере. Если при создании архива вы выделили папку с файлами и выбрали «Добавить в архив», внутри ZIP-файла появится промежуточный каталог. Это критическая ошибка.

Выясним причину: веб-расширение 1С ожидает найти инсталлятор (например, setup.exe или setuptc.exe для лаунчера тонкого клиента) непосредственно в корне архива. Если файлы вложены в подпапку, система выдает сообщение о некорректности дистрибутива. Чтобы это исправить, выполним следующие действия:

  1. Откроем папку с распакованным дистрибутивом.
  2. Выделим все файлы (но не саму папку).
  3. Нажмем правую кнопку мыши и выберем пункт создания ZIP-архива.
  4. Убедимся, что при открытии готового архива мы сразу видим файлы setup.exe, 1CEnterprise 8.msi и другие, без лишних вложений.

Также обратим внимание на именование файлов. Для корректного распознавания системой используем стандартные имена:

Настраиваем веб-сервер IIS для отдачи обновлений

Если при попытке скачивания файла через браузер или клиент 1С возвращается ошибка 404 (File Not Found, что можно проверить через тестирование http сервисов), хотя файл физически находится на сервере, проанализируем настройки веб-сервера. Веб-сервер IIS по умолчанию может блокировать отдачу файлов с неизвестными расширениями или из определенных каталогов.

Настройка MIME-типов:
Для того чтобы IIS «понимал», как отдавать архивы и конфигурационные файлы, добавим соответствующие типы данных в настройках сайта:

Права доступа:
Убедимся, что пользователь, от имени которого запущен пул приложений 1С (обычно IIS AppPool\ИмяПула или IUSR), имеет права на чтение и выполнение в каталоге distr. Если каталог расположен внутри C:\Program Files\1cv8\..., проверьте наследование прав, так как системные папки имеют повышенный уровень защиты.

Особенности размещения папки distr в новых версиях платформы

Проанализируем изменения в архитектуре платформы, начиная с версии 8.3.20. Ранее каталог с дистрибутивами мог находиться в корневой папке установки. В современных версиях логика поиска изменилась. Теперь веб-расширение ищет дистрибутивы по следующему пути:

C:\Program Files\1cv8\8.3.XX.XXXX\bin\distr

Важно помнить: название папки distr должно быть написано в нижнем регистре. Если вы создавали каталог вручную, убедитесь в отсутствии заглавных букв. После размещения файлов обязательно перезапустите службу веб-сервера (IIS или Apache). Это необходимо, так как веб-компоненты 1С кэшируют список доступных обновлений при старте.

Использование конфигурационных файлов для переопределения путей

Иногда требуется хранить дистрибутивы в нестандартном месте (например, при автоматизации на Astra Linux). Для этого мы можем воспользоваться файлом conf.cfg или настройками публикации default.vrd. Рассмотрим, как прописать пути вручную.

В файле conf.cfg, который обычно находится в папке C:\Program Files\1cv8\conf, можно добавить параметры, указывающие на местоположение файлов обновления:


ConfLocation=C:\Program Files\1cv8\conf
PublishDistributiveLocationWindows64=http://ваш-сервер/distr/Windows64tc.zip
PublishDistributiveLocationWindows=http://ваш-сервер/distr/Windowstc.zip

Разберем ситуацию с использованием нестандартных портов. Если ваш веб-сервер работает, например, на порту 78, автоматическое определение может не сработать. В этом случае в настройках публикации в Конфигураторе или напрямую в файле default.vrd необходимо явно указать URL с портом:

<distributive location="http://192.168.1.10:78/distr_folder/" />

Проблемы при использовании HTTPS и самоподписанных сертификатов

Рассмотрим случай, когда скачивание начинается, но прерывается с ошибкой. Если ваш сервер работает по протоколу HTTPS и вы используете самоподписанный сертификат, тонкий клиент может разорвать соединение из-за недоверия к источнику. Чтобы решить эту проблему, выполним одно из действий:

  1. Установим сертификат сервера в хранилище «Доверенные корневые центры сертификации» на каждой клиентской машине.
  2. Добавим в файл 1cescmn.cfg на стороне пользователя параметр, игнорирующий проверку сертификатов: IgnoreUnverifiedCertificate=1.

Очистка кэша на стороне клиента

В завершение процесса отладки важно помнить о кэшировании. Если клиент однажды попытался скачать «битый» или пустой архив (например, когда сервер вернул 404 в виде html-страницы), этот файл может сохраниться в локальном временном каталоге пользователя. В результате, даже после исправления ошибки на сервере, клиент будет пытаться открыть старый файл из кэша.

Проанализируем содержимое папки Temp пользователя:

C:\Users\ИмяПользователя\AppData\Local\Temp\1cv8\

Найдем файлы с именами вида v8_XXXX_X.zip и удалим их перед проведением контрольного теста обновления. Это гарантирует, что тонкий клиент скачает актуальную версию дистрибутива с сервера.

← На главную