Сервер 1С

Подключение через Интернет позволяет обеспечить удаленную on-line работу пользователей с информационными базами. Это возможно благодаря использованию тонкого клиента, веб-клиента или мобильного клиента. Они подключаются к специальным образом настроенному веб-серверу, который осуществляет их взаимодействие с кластером или с файловой информационной базой.

В клиент-серверном варианте работы:


В файловом варианте работы:

Прикладные решения не требуют какой-либо доработки для того, чтобы работать с ними через Интернет. И тонкий, и веб-клиент, и мобильный клиент самостоятельно обеспечивают функционирование интерфейса «1С:Предприятия 8» на компьютере пользователя.

Отличие в использовании этих клиентских приложений заключается в следующем:

  • тонкий клиент и мобильный клиент требуют предварительной установки на компьютере пользователя, веб-клиент — не требует,
  • тонкий клиент обеспечивает полную функциональность, веб-клиент не поддерживает некоторые возможности платформы,
  • существуют некоторые отличия в эргономике работы в тонком и веб-клиенте.

Подключение клиентских приложений может выполняться как по протоколу http, так и по протоколу https, поддерживающему шифрование передаваемых данных.

Работа через мобильный Интернет

Клиенты могут использовать различные способы выхода в Интернет. Это могут быть высокоскоростные подключения по выделенным линиям или через локальную сеть. А могут быть низкоскоростные подключения, например, через мобильное GPRS-соединение.

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

Дистрибутив тонкого клиента

Для того чтобы удаленные пользователи, подключающиеся через Интернет, могли в полном объеме использовать функциональные возможности прикладного решения, существует отдельный дистрибутив платформы, содержащий только тонкого клиента — «1С:Предприятие 8. Тонкий клиент».

Этот дистрибутив имеет небольшой объем, что позволяет легко скачивать его по различным каналам связи.

Также платформа поддерживает режим автоматического скачивания (по протоколу HTTP) и установки дистрибутива тонкого клиента в тех случаях, когда обнаруживается несовпадение версий запущенного тонкого клиента и серверной части «1С:Предприятия 8».

Другие возможности удаленной работы

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

  • Использование веб-сервисов позволяет прикладным решениям поддерживать и реализовывать технологию сервисно-ориентированной архитектуры SOA (Service-Oriented Architecture). Эта технология является современным стандартом интеграции приложений и информационных систем. С ее помощью прикладное решение может предоставить свою функциональность в качестве набора веб-сервисов, опубликованных в Интернете. В свою очередь и само прикладное решение может использовать веб-сервисы, опубликованные другими поставщиками. Подробнее…
  • Off-line обмен данными в распределенной информационной системе — механизмы обмена данными позволяют с заданной периодичностью пересылать изменения данных и конфигурации между узлами распределенной системы. Причем узлами такой системы могут быть как информационные базы «1С:Предприятия 8», так и другие программные системы, не основанные на «1С:Предприятии 8». Подробнее…

Все знают, что сервер – это специализированный компьютер в материальном понимании, то, что на языке системных администраторов называется «железо». Если мы говорим о среде 1С Предприятия и файловом варианте работы, то сервер предприятия, сотрудники которого работают с учетными программами, хранит базы данных, к которым по локальной сети подключаются пользователи с клиентских устройств. Помимо этого на сервере, естественно, может храниться и другая информация.

Что такое сервер 1С

Но существует и другое понимание сервера

Сервер 1С – это программа, которая работает в клиент-серверном режиме с базами данных 1С под управлением СУБД, например, Microsoft SQL Server или Linux PostgreSQL, IBM DB2, Oracle Database и т.д. То есть это не просто хранение базы 1С на сервере, это управление процессами работы 1С Предприятия.

Как правило, сервер 1С используют средние и крупные компании, в которых с базами данных 1С одновременно работают около 20 или более пользователей. При меньшем количестве пользователей 1С все-таки достаточно файлового режима, когда база данных 1С располагается на одном из компьютеров (возможно одного из пользователей), а с остальных ПК прописан к ней путь в локальной сети. Например, вот так: \\\Базы 1с\

А у пользователя, на компьютере которого лежит база:

Рис.1 Имя базы

Зачем же нужен сервер 1С, и какие преимущества он имеет?

  • Быстродействие. При работе в клиент-серверном варианте 1С самые объемные и «тяжелые операции», например, групповое перепроведение документов или групповая обработка данных, производятся на серверных мощностях, а конечный результат, так называемая «выборка», предоставляется клиентскому приложению. Увеличить мощность одного сервера проще и дешевле, чем обновить все клиентские машины.
  • Безопасность. При использовании клиент-серверного режима 1С, пользователям не известно место расположения базы данных. Это простейший способ пресечь вероятность копирования информации из базы данных. В файловом режиме работы с базой пользователь может легко это сделать.
  • Еще одним серьезным доводом в пользу интеграции сервера 1С архитектуру информационной системы на базе 1С является удобство администрирования, а также возможность контроля и разграничения доступа пользователей к базе данных.

Работа сервера 1С

Конфигурация или клиентское приложение 1С, запущенное пользователем на своем устройстве, допустим, компьютере, подключена к кластеру серверов 1С:Предприятие 8, который обращается к серверу, хранящему базы данных, управляемые MS SQL Server или PostgreSQL.

Сервер 1С Предприятие 8 и сервер баз данных желательно разместить на разном «желлезе», поскольку именно благодаря этому распределяется нагрузка между серверами 1С Предприятие и БД.

Рис. 2 Схема серверной работы

Устанавливаем сервер 1С

Перейдем непосредственно к инструкции по установке сервера 1С. Для начала нам понадобится установочный дистрибутив, который можно взять на сайте поддержки пользователей 1С (users.v8.1c.ru).

Из перечня поставляемых дистрибутивов нам подойдут два варианта:

  • Технологическая платформа 1С Предприятие для Windows – для установки сервера 1С 32-разрядной версии.
  • Сервер 1С Предприятие (х64) для Windows – чтобы установить сервер 1С как 64х так и 32х-разрядной версии.

Открываем папку с файлами установки. Для среды 1С Предприятия это стандартное окно.

Рис. 3 Папка с файлами установки

Нам понадобится файл Setup.exe. Его запуск вызовет помощника установки системы «1С Предприятия». На первой странице жмем «Далее».

На следующей странице нам будет предложено выбрать устанавливаемые компоненты. Помимо стандартно указанных, обратим внимание на:

  • Сервер 1С Предприятия, который установит компоненты сервера 1С.
  • Администрирование сервера 1С Предприятия 8 – необходимые элементы администрирования серверов 1С.

Остальные компоненты могут быть установлены по необходимости сейчас или позднее. Поэтому, нажимаем «Далее».

Рис.4 Выборочная установка

После этого нам предстоит среди предложенных языков интерфейса, выбрать язык. Тут все зависит от желания пользователя. Обратите внимание, что выбрав «Системные установки» работа будет продолжаться на языке ОС, установленной на компьютере.

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

  • Вход в систему, то есть доступ непосредственно к сервису (Log on as service);
  • Вход в систему для запуска пакета заданий/команд (Log on as batch job);
  • Возможность использования журналов производительности (Perfomance Log Users).

Помимо этого пользователю лучше дать права на каталог служебных файлов сервера. По умолчанию это C:\ProgramFiles(или ProgramFiles(x86))\1cv8\srvinfo. Путь зависит от того, какой разрядности приложение для сервера 1С Предприятие мы устанавливаем.

Созданный новый пользователь USR1CV8 по умолчанию будет обладать всеми перечисленными правами. Задаем пароль и продолжаем установку сервера Предприятия.

Рис.5 Установка сервера

На следующей странице начинаем установку.

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

После нажатия «Далее», если ошибок в процессе установки не возникло, на последней странице жмем «Готово» для завершения установки.

Теперь нам надо убедиться, что служба сервера запущена.

Рис.6 Служба сервера

В список служб мы можем зайти по команде services.msc в поисковой строке меню «Пуск». Служба может выглядеть так, как показано на скриншоте или «1С: Enterprise 8.3 Server Agent». Если служба не запущена, сделайте запуск вручную: правой кнопкой мыши по службе – Свойства – Запустить. Также поставим Тип запуска – Автоматически.

Установка Сервера 1С завершена. Остается только настроить брандмауэр Windows, чтобы пользователи с клиентских машин могли подключаться к серверу 1С. Для этого в брандмауэре нужно разблокировать порты 1541, 1560-1591. О том, как добавить разрешающее правило в брандмауэр, можно прочесть в Интернете.

В финале мы активируем имеющуюся лицензию на сервер 1С.

02:00 27.10.2019
Публикация баз данных 1С:Предприятие 8.3 на веб-сервере Apache в Debian или Ubuntu

Публикация информационных баз 1С:Предприятие на веб-сервере приобретает все большую популярность, так как позволяет легко организовать доступ с использованием стандартных протоколов HTTP/HTTPS из любого места где есть интернет. При этом вы можете работать даже там, где доступ в интернет ограничен одним лишь серфингом, если работает браузер — будет работать и 1С. Сегодня мы подробно рассмотрим настройку веб-сервера для совместной работы с 1С:Предприятие 8.3 на платформах Debian или Ubuntu.

Обычно во всех инструкциях по установке сервера 1С на платформе Linux вместе с ним устанавливают и веб-сервер Apache, что не совсем правильно с точки зрения безопасности и удобства администрирования. С учетом того, что веб-сервер обычно используется для работы с внешними пользователями, то крайне желательно использовать на нем актуальные версии ПО с последними обновлениями безопасности. Это не всегда возможно, если веб-сервер установлен на одном узле с сервером 1С, так как обновление критически важного для предприятия сервера — это весьма непростая задача.

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

Например, веб-сервер можно использовать как единую точку консолидации для нескольких серверов, единственное условие — одинаковые версии технологической платформы. Это удобно, не нужно запоминать какая база расположена на каком сервере, кроме того, пробросить один сервер на внешний интерфейс или в VPN-сеть легче, чем группу серверов, для которых придется использовать нестандартные порты, что в ряде случаев может составить проблему.

Возможна также и иная схема, когда несколько веб-серверов работают с одним сервером 1С. Это оправдано, когда следует разделить набор доступных баз и обеспечить разный уровень безопасности, высокий для внешних пользователей и стандартный для внутренних, либо обеспечить балансировку нагрузки.

Также возможны и любые иные комбинации, которые ограничены только вашими возможностями и потребностями. А с учетом относительной нетребовательности веб-сервера к ресурсам, для них можно использовать виртуальные машины или контейнеры. Например, мы имеем хороший опыт по использованию контейнеров в системе виртуализации Proxmox.

Настройка сервера

В первую очередь установим веб-сервер Apache, так как 1С:Предприятие, начиная с версии платформы 8.3.8 поддерживает актуальную версию Apache 2.4, то вся установка сводится к единственной команде:

apt install apache2

Затем установим модуль расширения веб-сервера от 1С, для этого скачаем с официального сайта архив Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем. Сразу сделаем оговорку, мы не видим никаких причин использовать в 2019 году 32-битные версии веб-серверов для 1С, поэтому здесь и далее мы будем работать только с 64-битными системами.

Из данного архива нам понадобятся три пакета: 1c-enterprise83-ws — сам модуль веб-расширения, 1c-enterprise83-common — требуется по зависимостям и 1c-enterprise83-server, которого нет в зависимостях, но без которого веб-сервер с 1С работать не будет. Если вы используете в 1С языки отличные от русского, то вам потребуется еще добавить одноименные пакеты nls

Скопируем эти пакеты в отдельную директорию, скажем, 1С в домашнем каталоге, перейдем в него и установим пакеты:

cd ~/1C
dpkg -i 1c*.deb

После чего отключим автозагрузку сервера 1С, который для работы не нужен, в целях экономии ресурсов:

systemctl disable srv1cv83

Если все делать «по инструкции», то следующими шагами должна быть установка прав на папки и файлы, но на практике этого не требуется, так как модуль веб-сервера работает только на чтение и имеет для этого все права с настройками по умолчанию.

Публикация клиент-серверных баз

Перед тем как публиковать базу нужно выполнить некоторые условия. Обращаться к серверу 1С можно только по имени хоста, которое веб-сервер должен разрешать в IP-адрес, в доменных сетях это решается использованием доменных DNS, но в любом случае разрешение имен следует проверить.

Для одноранговых сетей следует добавить запись в файл /etc/hosts:

192.168.16.130 SRV-1C

Где SRV-1C имя вашего сервера 1С, перед которым указываем его IP-адрес.

Затем создадим директорию для публикации информационной базы, расположение может быть любым, но хорошим тоном для Linux-систем будет использование стандартных расположений, для веб-сервера это /var/www:

mkdir /var/www/infobase

После чего можно перейти непосредственно к публикации, для этого будем использовать утилиту webinst, предварительно перейдя в каталог с ее расположением:

cd /opt/1C/v8.3/x86_64
./webinst -publish -apache24 -wsdir InfoBase -dir /var/www/infobase -connstr «Srvr=SRV-1C;Ref=Infobase;» -confpath /etc/apache2/apache2.conf

Коротко поясним используемые параметры:

  • publish — указывает необходимое действие, в данном случае публикацию, может быть опущен, так как это действие по умолчанию
  • apache24 — задает тип веб-сервера, для Apache 2.2 следует указывать apache22.
  • wsdir — имя публикации, по которому к базе следует обращаться из браузера, обратите внимание, что оно регистрозависимое
  • dir — путь публикации, ранее созданная нами директория
  • connstr — строка соединения, состоит из нескольких частей: Srvr — имя сервера, Ref — имя базы на сервере, каждая часть должна заканчиваться служебным символом «;»
  • confpath — путь к конфигурационному файлу веб-сервера

После чего следует перезапустить веб-сервер:

service apache2 reload

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

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

Поэтому мы рекомендуем использовать тонкий клиент везде, где это возможно. Для подключения следует использовать строку http://SRV-WEB-1C/InfoBase или http://192.168.16.136/InfoBase, для подключения можно использовать FQDN, плоское имя или IP-адрес, с условием, что имена разрешаются на клиенте в адрес сервера. Предпочтительно использовать FQDN, но работать будет любой вариант.

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

Здесь мы еще раз напомним, что адрес регистрозависимый и если вы ранее указали в параметре wsdir имя InfoBase, то в дальнейшем его следует использовать в строке подключения, потому как http://SRV-WEB-1C/InfoBase — работать будет, а http://SRV-WEB-1C/infobase вызовет ошибку 404.

Публикация файловых баз

Возможно, вы удивитесь, но модуль расширения веб-сервера позволяет публиковать файловые базы на сервере без графического интерфейса и без установки клиента 1С, единственное условие — база физически должна располагаться на веб-сервере.

Также нам потребуется установить все необходимые для работы 1С библиотеки и шрифты. Для этого потребуется подключить несвободные репозитории, откройте файл /etc/apt/sources.list и в Debian добавьте в конце каждой строки:

non-free

а в Ubuntu раскомментируйте строки содержащие в конце

multiverse

Затем выполните:

apt update
apt install ttf-mscorefonts-installer
apt install libfontconfig1
apt install libgsf-1-114
apt install libglib2.0-0
apt install libodbc1

В зависимости от используемого вами дистрибутива часть библиотек может быть уже установлена, о чем вы получите сообщение, так в Debian 9/10 по умолчанию установлены libfontconfig1 и libglib2.0-0.

Затем установим библиотеки ImageMagick, в разных дистрибутивах они могут иметь разные версии, поэтому выполним:

apt search libmagickwand-6

В выводе найдем нужную версию с окончанием на q16-x и установим ее.

В нашем случае это библиотека libmagickwand-6.q16-6:

apt install libmagickwand-6.q16-6

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

mkdir /opt/1C_base/InfoBase2

И поместим в нее любым доступным способом, скажем, через SFTP, файл базы данных 1Cv8.1CD, имейте ввиду, что клиента 1С на веб-сервере нет и загрузить на нем DT-файл мы не можем, поэтому его нужно развернуть в другом месте и передать на сервер именно 1CD.

Затем обязательно изменим владельца директории на пользователя веб-сервера:

chown -R www-data:www-data /opt/1C_bases

Создадим каталог публикации:

mkdir /var/www/infobase2

и опубликуем базу:

cd /opt/1C/v8.3/x86_64
./webinst -publish -apache24 -wsdir InfoBase2 -dir /var/www/infobase2 -connstr «File=/opt/1C_base/InfoBase2;» -confpath /etc/apache2/apache2.conf

Перезапустим веб-сервер и базой можно работать:

service apache2 reload

Но для работы следует использовать исключительно тонкий клиент, так как веб-клиент не сможет получить лицензию.

Ошибка «Объект заблокирован»

При активной работе с веб-сервером вы можете столкнуться с ошибкой Объект заблокирован, причем заблокирован он будет этим же пользователем. Это связано с тем, что Apache запускает несколько рабочих процессов и затем балансирует нагрузку между ними. При этом каждый рабочий процесс устанавливает свое соединение с базой 1С и может получиться так, что вы открыли документ в одном сеансе, а сохраняете в другом. Поэтому вполне закономерно столкнетесь с блокировкой.

Чтобы избежать этого следует ограничить Apacе одним рабочим процессом, для этого откройте /etc/apache2/mods-available/mpm_prefork.conf и установите следующие значение опциям:

StartServers 1

Опубликовано: 24.05.2018 / Рубрики: 1С, Администрирование 1С

После выхода новых платформ 1С (например, уже в 8.3.11.2867 ) на 64-х разрядных системах Windows апач версии 2.0, 2.2 работать перестает. Есть выход перейти на 2.4. Его установка несколько сложнее, чем обычная — установочных файлов нет, поэтому все нужно запускать и настраивать вручную. С учетом того, что мне интересно было использовать IIS, решил заодно и статью написать.

  1. Для Windows х64 потребуется дистрибутив 1С х64 (это касается как сервера, так и клиентских приложений)
  2. Установка веб-сервера IIS

Устанавливаем веб-сервер Internet Information Server. При установке обязательно выбираем компоненты:

  • Общие функции HTTP (Common HTTP Features)
    • Статическое содержимое (Static Content)
    • Документ по умолчанию (Default Document)
    • Обзор каталогов (Directory Browsing)
    • Ошибки HTTP (HTTP Errors)
  • Разработка приложений (Application Development)
    • ASP
    • ASP.NET 3.5
    • Расширяемость .NET 3.5 (.NET Extensibility 3.5)
    • Расширения ISAPI (ISAPI Extensions)
    • Фильтры ISAPI (ISAPI Filters)
  • Исправление и диагностика (Health and Diagnostics)
    • Ведение журнала HTTP (HTTP Logging)
    • Монитор запросов (Request Monitor)
  • Средства управления (Management Tools)
    • Консоль управления IIS (IIS Management Console)

3. Дальше ставим 1С с соответствующей разрядностью.

4. Потом даем права для пользователей IIS_IUSRS и IUSR на папки:

  • папки с установленной платформой;
  • папки с публикациями баз;
  • папки самих баз (в случае файлового варианта).

5. Далее стандартно публикуем базу (как при публикации через apache)

6. Настройка IIS для использования 32х разрядного модуля расширения веб-сервера

Запустим Диспетчер служб IIS (Internet Information Services (IIS) Manager). Сделать это можно из Диспетчера серверов (Server Manager) выбрав в меню пункт «Средства» (Tools) — «Диспетчер служб IIS» (Internet Information Services (IIS) Manager).

Здесь, развернув дерево в окне подключений, увидим, что для веб-сайта по умолчанию — Default Web Site — появился преобразованный в приложение виртуальный каталог с именем, которое мы задавали при публикации базы данных. Для завершения публикации осталось только разрешить 32-разрядные приложения для пула приложений по умолчанию. Для этого перейдем в дереве подключений на вкладку «Пулы приложений» (Application Pools).

В списке пулов приложений найдем пул с именем DefaultAppPool. Кликнем по нему правой кнопкой мыши и в контекстном меню выберем пункт «Дополнительные параметры» (Advanced Settings).

В открывшемся окне параметров пула приложения, в группе «Общие» (General) найдем пункт «Разрешены 32-разрядные приложения» (Enable 32-Bit Applications) и установим значение параметра равным True. Затем сохраним изменения нажав «ОК».

7. Настройка IIS для использования 64х разрядного модуля расширения веб-сервера

Зарегистрировать 64-разрядный модуль расширения веб-сервера можно с помощью утилиты webinst.exe соответствующей версии, расположенной в каталоге bin, каталога с установленной программой «1С:Предприятие», либо воспользоваться приведенным ниже способом.

Запустим Диспетчер служб IIS (Internet Information Services (IIS) Manager). Сделать это можно из Диспетчера серверов (Server Manager) выбрав в меню пункт «Средства» (Tools) — «Диспетчер служб IIS» (Internet Information Services (IIS) Manager).

Здесь, развернув дерево в окне подключений, увидим, что для веб-сайта по умолчанию — Default Web Site — появился преобразованный в приложение виртуальный каталог с именем, которым мы задавали при публикации базы данных. Для завершения публикации осталось только указать данному приложению использовать 64-разрядный обработчик запросов. Для этого откроем страницу настройки сопоставления обработчиков для данного виртуально каталога, выбрав пункт «Сопоставление обработчиков» (Handler Mappings) на начальной странице приложения.

В таблице сопоставлений обработчиков найдем обработчик «1С Web-service Extension». Откроем данный обработчик, кликнув 2 раза по соответствующей строке в таблице.

Add a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *