С развитием платформы «1С:Предприятие 8.3» у администраторов и разработчиков появился мощный инструмент автоматизации — обновление клиентских приложений при обновлении версии платформы на сервере — для таких задач подойдёт обработка для управления кластерами и сеансами 1С. Это избавляет от необходимости вручную обходить рабочие места пользователей или использовать сложные внешние сценарии развертывания программного обеспечения. В данной статье мы подробно разберем, как устроен этот механизм, какие существуют юридические и технические нюансы, а также детально рассмотрим два основных сценария настройки: через веб-сервер (HTTP/HTTPS) и через общую сетевую папку (LAN).
Перед тем как перейти к технической реализации, проанализируем лицензионную политику компании «1С». Функциональные возможности автоматического обновления тонкого клиента с сервера 1С, а также публикация дистрибутивов обновлений через HTTP официально входят в пакет возможностей сервера уровня КОРП. Использование данного функционала на серверных лицензиях уровня ПРОФ (обычных 64-разрядных серверах) технически возможно во многих релизах платформы, однако юридически является нарушением лицензионного соглашения. Если ваша организация строго соблюдает лицензионную чистоту, для коммерческого использования автообновления через веб-сервер потребуется приобрести лицензии уровня КОРП. Если же вы работаете в рамках файлового варианта или используете обычные лицензии ПРОФ, для вас легальным и стабильным решением будет обновление через сетевой каталог ЛВС.
---
Этот способ незаменим, когда пользователи подключаются к информационной базе удаленно через интернет. При попытке входа в базу система сверяет версию клиента и сервера. Если обнаружено несоответствие, платформа автоматически скачивает нужный дистрибутив по HTTP-соединению и устанавливает его.
Рассмотрим пошагово процесс публикации дистрибутива на веб-сервере.
Шаг 1. Подготовка дистрибутивов тонкого клиента
Для каждого релиза платформы вам понадобятся дистрибутивы тонкого клиента под нужные операционные системы (например, Windows x86, Windows x64). Крайне важно правильно упаковать файлы:
Setup.exe, 1CEnterprise 8 Thin Client.msi и сопутствующие файлы) в обычный ZIP-архив.windows_x86.zip и windows_x86_64.zip.Шаг 2. Настройка веб-сервера Apache
Если вы используете веб-сервер Apache, вам необходимо создать виртуальный каталог (алиас), указывающий на физическую папку с дистрибутивами на сервере. Выясним, как прописать настройки в конфигурационном файле httpd.conf. Для упрощения развертывания веб-сервера можно использовать скрипт автоматической установки Apache HTTP Server.
Для Apache версии 2.4 добавьте следующий блок конфигурации:
# Настройка публикации дистрибутивов платформы 1С
Alias "/Platform" "C:/www/Platform/"
<Directory "C:/www/Platform/">
Options Indexes Includes
AllowOverride All
Require all granted
</Directory>
После изменения конфигурации обязательно перезапустите службу Apache. Убедитесь, что по адресу http://[Адрес_Вашего_Сервера]/Platform/ через обычный браузер открывается список файлов и архивы успешно скачиваются.
Шаг 3. Настройка веб-сервера IIS (Internet Information Services)
Если в качестве веб-сервера используется Microsoft IIS, администраторы часто сталкиваются с проблемой: скачивание архива через браузер работает, а встроенный механизм 1С выдает ошибку несоответствия версий сразу после начала скачивания. Причина кроется в сопоставлении типов MIME.
Проанализируем решение этой проблемы:
.zip. По умолчанию IIS может отдавать его как application/x-zip-compressed..zip на стандартный application/zip.Шаг 4. Настройка файла публикации базы default.vrd
Чтобы платформа знала, откуда скачивать обновление для конкретной информационной базы, необходимо прописать пути к архивам в файле публикации default.vrd. Этот файл находится в каталоге публикации самой информационной базы.
Откройте файл default.vrd в текстовом редакторе и добавьте параметры pubdst в узел элемента point:
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
base="/MyBase"
ib="Srvr=MyServer;Ref=MyBase;"
pubdst="http://MyWebServer/Platform/"
pubdst32="http://MyWebServer/Platform/windows_x86.zip"
pubdst64="http://MyWebServer/Platform/windows_x86_64.zip">
</point>
Также эти параметры можно настроить через диалоговое окно публикации в Конфигураторе на вкладке «Дополнительные» или «Дистрибутивы».
---
Если вы перевели публикацию 1С на защищенное соединение HTTPS, платформа может блокировать скачивание файлов из-за недоверенного SSL-сертификата. Посмотрим, как это исправить:
cacert.pem, расположенный в каталоге установленной платформы в папке bin (например, C:\Program Files\1cv8\8.3.XX.YYYY\bin\cacert.pem). Этот файл содержит доверенные сертификаты центра сертификации. Если файл поврежден, устарел или отсутствует (что часто бывает при установке «урезанного» дистрибутива тонкого клиента), скопируйте актуальный файл cacert.pem из дистрибутива полной версии платформы на клиентские машины.В истории релизов платформы зафиксирован критический баг. При попытке автоматического обновления тонкого клиента по протоколу HTTP с ветки 8.3.9 на ветку 8.3.10 дистрибутив скачивался, но процесс установки прерывался без сообщений об ошибках, и система вновь выдавала окно о несоответствии версий — для мониторинга подобных сбоев есть мониторинг журнала регистрации и уведомление о сбоях в Telegram.
Выясним причину: баг содержался непосредственно в загрузчике платформы 8.3.9. Ошибка была исправлена разработчиками 1С в релизе 8.3.9.2309. Чтобы успешно обновить пользователей в этой ситуации, требуется сначала обновить их тонкие клиенты вручную (или через групповые политики) до версии 8.3.9.2309, после чего дальнейшие автоматические обновления на ветку 8.3.10 и выше будут проходить в штатном режиме.
---
Если все ваши пользователи работают внутри локальной сети предприятия (LAN), разворачивать веб-сервер необязательно. Мы можем настроить автоматическую установку из общей папки — для этого пригодится инструмент централизованного администрирования рабочих мест 1С.
Рассмотрим по шагам, как задействовать встроенные механизмы конфигурационного файла 1CESCmn.cfg.
Шаг 1. Создание сетевого ресурса
C:\1C_Distr.\\ServerName\1C_Distr. Убедитесь, что у всех пользователей есть права на чтение файлов в этой папке.Шаг 2. Настройка файла конфигурации на клиенте
Для того чтобы программа знала, где искать новые дистрибутивы, используется файл общих настроек 1CESCmn.cfg. Он располагается в каталоге шаблонов и настроек 1С (обычно в папке %ProgramData%\1C\1CEStart или в каталоге установки загрузчика C:\Program Files\1cv8\common).
Пропишем в этом файле параметр DistributiveLocation:
DistributiveLocation=\\ServerName\1C_Distr
CommonDstPlatformSplitted=distrib
При запуске стартер 1cestart.exe обратится к указанному сетевому пути, обнаружит там более свежую версию платформы, самостоятельно скопирует ее на локальный компьютер пользователя и произведет установку. При этом пользователю не понадобятся полные права администратора, если в операционной системе правильно настроена служба установки платформы.
---
1C:Enterprise Installation Service на рабочих станциях либо первоначально разворачивать платформу через групповые политики (GPO) с использованием MSI-пакетов.C:\Program Files\1cv8 может разрастись до огромных размеров. Рекомендуется периодически запускать на компьютерах пользователей скрипты очистки старых релизов или использовать параметр InstalledVersions в файле конфигурации 1CEStart.cfg для жесткого ограничения доступных версий.Таким образом, мы детально разобрали все нюансы автоматического обновления тонкого клиента 1С 8.3. Выбор конкретного метода зависит от архитектуры вашей сети: для распределенных офисов и удаленных сотрудников отлично подойдет связка с веб-сервером IIS или Apache, а для классической локальной сети предприятия наиболее простым и надежным решением станет использование параметра DistributiveLocation в общем сетевом каталоге.