суббота, 9 июля 2016 г.

1С: Публикация дистрибутива клиентского приложения

Цель

При работе удаленных пользователей через тонкий клиент возникает необходимость обновления версий тонкого клиента при обновлении версии сервера приложений 1С. С этой целью платформой предусмотрено два варианта получения дистрибутива обновления:
  • обновление дистрибутива с помощью настроек публикации информационной базы;
  • обновление дистрибутива публикацией web-сервиса обновления.
Сразу стоит оговориться что обе эти возможность доступна для лицензии КОРП
Речь далее идет о первом варианте.

Настройка публикации дистрибутива

Необходимо скачать дистрибутив тонкого клиента, переупаковать его из rar в zip архив, при этом файлы дистрибутива должны находиться в корне архива, без папок (требования к zip-архиву), имя архива любое. 

Опубликовать на web-сервере каталог с дистрибутивом

IIS

  1. Создаем виртуальный каталог, включаем просмотр каталога



  2. Меняем у каталога Тип MIME для расширения .zip c "application/x-zip-compressed" на "application/zip". Перезагружаем IIS.


  • Не забываем при публикации из конфигуратора запускать его под администратором.
  • При работе х32 сервера 1с на х64 версии ОС и IIS установить в дополнительных параметрах пула приложений DefaultAppPool "Разрешены 32-разрядные приложения"




Apache


  1. Создаем папку в корневом каталоге web-сервера. Кладем туда архив с дистрибутивом. В моем случае это F:\Apache22\htdocs\distribupd\setuptc.zip
  2. В httpd.conf сделать настройки
Apache 2.2
<Directory "F:/Apache22/htdocs/distribupd">
    Options Indexes Includes
    AllowOverride All
    Order allow,deny
    Allow from All
</Directory> 

Apache 2.4

<Directory "F:/Apache24/htdocs/distribupd">
    Options Indexes Includes
    AllowOverride All
    Require all granted
</Directory>
Перезагружаем Apache.

    Проверяем доступен ли дистрибутив по внешней ссылке. В моем случе web-сервер (как IIS так и Apache) работает в пределах ЛВС.


Настроить публикацию информационной базы

Настройку можно провести из конфигуратора или непосредственно отредактировать файл default.vrd из каталога публикации.

Из конфигуратора



Правка в файле


Проверка

При попытке войти в ИБ вместо сообщения о несоответствии версий клиента и сервера будет выдано следующее сообщение

Жмем обновить

Соглашаемся с установкой

После загрузке архива дистрибутива с сервера будет произведена установка без лишних вопросов к пользователю, все параметры установки будут взяты из 1cestart.cfg.


Пользуясь данным функционалом надо помнить о необходимости наличия прав на установку приложений на ОС клиента (как вариант, установка прав). А так же предусматривать возможные проблемы при установке дистрибутива и проводить установку нового дистрибутива заранее, чтобы исключить проблемы на критичных участках. Как вариант, для этого необходимо наличие развернутой базы для обновления на сервере (простая файловая база, опубликованная на веб сервере с публикацией дистрибутива). При необходимости обновления дистрибутива у файловой базы для обновления меняется версия. В основной ИБ запускаются уведомления о необходимости выполнения обновления с кнопкой "Обновить". По нажатию на эту кнопку выполняется запуск базы для обновления, далее отрабатывает механизм платформы по обновлению дистрибутива. Результат обновления можно собирать автоматически с помощью скриптов, и отправлять для анализа. При не успешном выполнении проблемные дистрибутивы доставляются. По выполнении обновления всех дистрибутивов выполняется перевод рабочей ИБ на новую версию.