Публикация базы 1С на веб-сервере используется для работы через браузер или через тонкий клиент 1С. Рассмотрим два типа публикации баз 1С: на операционной системе Windows с использованием веб-сервера IIS, а также на операционной системе Linux — с использованием веб-сервера apache.
Публикация базы 1С на Windows Server 2016
1
Установка роли веб-сервера. Через диспетчер серверов необходимо установить роль веб-сервера IIS.
2
Установка клиента 1С. Скачиваем дистрибутив с официального сайта. Нам нужна «Технологическая платформа 1С:Предприятия для Windows».
3
При установке выбираем компоненты «1С: Предприятие 8» и «Модули расширения веб-сервера».
4
После установки добавляем в список информационных баз нужную нам базу и запускаем в режиме конфигуратора.
5
Выполняем действие — «Администрирование» — «публикация на веб-сервере».
6
Нажимаем кнопку опубликовать. И получаем сообщение о том, что публикация выполнена и необходимо перезапустить веб-сервер.
7
Делаем отдельный пул приложений. Назовем его 1c-32x и разрешим ему запуск 32-х битных приложений.
8
Назначаем сайту пул приложений 1c-32x.
9
Проверяем доступность публикации через веб-браузер.
Публикация базы 1С на сервере Linux
1
Обновляем систему, чтобы все пакеты ставились корректно, а также были установлены все последние обновления безопасности.
# yum update
2
Выполняем установку веб-сервера Apache.
# yum install httpd
3
Скачиваем дистрибутивы 1С. Скачать их можно с официального сайта. Нам необходимы файлы:
- 1C_Enterprise83-ws-8.x.x-xxxx.x86_64.rpm
- 1C_Enterprise83-common-8.x.x-xxxx.x86_64.rpm
- Содержаться они в архиве rpm64_8_x_xx_xxxx.tar.gz
На сайте releases.1c.ru доступны по пути:
Технологические дистрибутивы −> Технологическая платформа 8.3 −>Версия платформы (например 8.3.14) −>Cервер 1С:Предприятия (64-bit) для RPM-based Linux-систем.
4
Устанавливаем пакеты 1С.
# rpm -i 1C_Enterprise83-common-8.3.14-1630.x86_64.rpm 1C_Enterprise83-ws-8.3.14-1630.x86_64.rpm 1C_Enterprise83-server-8.3.14-1630.x86_64.rpm
Публикуем базу:
# cd /opt/1C/v8.3/x86_64/
# ./webinst -publish -apache24 -wsdir yt-demo -dir /var/www/yt-demo -connstr "File=""/opt/yt-demo"";" -confpath /etc/httpd/conf/httpd.conf
После корректной публикации должно быть следующее сообщение: Публикация выполнена (Publication successful).
Кратко рассмотрим параметры утилиты webinst:
- publish — Действие, которое планируем выполнить. Возможны варианты публикации базы или удаления публикации базы.
- apache24 — тип веб-сервера.
- apache2: публикация веб-клиента для Apache 2.0
- apache22: публикация веб-клиента для Apache 2.2
- apache24: публикация веб-клиента для Apache 2.4
- wsdir— имя алиаса, по которому идет обращение в браузере.
- dir — путь публикации, директория в папке веб-сервера.
- connstr — строка соединения, состоит из трех частей «File=» — указывает что база файловая (возможен вариант Srv для серверной базы), «/opt/yt-demo» — путь к каталогу информационной базы 1С , «;» — служебный символ.
- confpath — путь к файлу конфигурации веб-сервера.
Проверяем, в файле /etc/httpd/conf/httpd.conf должна быть строка:
LoadModule _1cws_module "/opt/1C/v8.3/x86_64/wsap24.so"
А также часть кода для публикации:
# 1c publication
Alias "/yt-demo" "/var/www/yt-demo/"
<Directory "/var/www/yt-demo/">
AllowOverride All
Options None
Require all granted
SetHandler 1c-application
ManagedApplicationDescriptor "/var/www/yt-demo/default.vrd"
</Directory>
5
Прописываем права на папку /opt/yt-demo. Так как в данном примере с базой будет работать только веб-сервер — предоставляем права только учетной записи веб-серера.
# chown -R apache:apache /opt/yt-demo/
# service httpd restart
7
Проверяем доступность публикации.
Публикация информационных баз 1С:Предприятие на веб-сервере приобретает все большую популярность, так как позволяет легко организовать доступ с использованием стандартных протоколов HTTP/HTTPS из любого места где есть интернет. При этом вы можете работать даже там, где доступ в интернет ограничен одним лишь серфингом, если работает браузер — будет работать и 1С. Сегодня мы подробно рассмотрим настройку веб-сервера для совместной работы с 1С:Предприятие 8.3 на платформах Debian или Ubuntu.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Обычно во всех инструкциях по установке сервера 1С на платформе Linux вместе с ним устанавливают и веб-сервер Apache, что не совсем правильно с точки зрения безопасности и удобства администрирования. С учетом того, что веб-сервер обычно используется для работы с внешними пользователями, то крайне желательно использовать на нем актуальные версии ПО с последними обновлениями безопасности. Это не всегда возможно, если веб-сервер установлен на одном узле с сервером 1С, так как обновление критически важного для предприятия сервера — это весьма непростая задача.
С выносом веб-сервера на отдельную машину многие задачи автоматически снимаются, мы всегда можем использовать самые последние и актуальные версии ПО, а в случае компрометации сервера злоумышленник не получит доступ к серверу 1С, тем более что отдельно стоящий веб-сервер всегда можно вынести в отдельную подсеть или демилитаризованную зону. Кроме того, появляются новые возможности.
Например, веб-сервер можно использовать как единую точку консолидации для нескольких серверов, единственное условие — одинаковые версии технологической платформы. Это удобно, не нужно запоминать какая база расположена на каком сервере, кроме того, пробросить один сервер на внешний интерфейс или в VPN-сеть легче, чем группу серверов, для которых придется использовать нестандартные порты, что в ряде случаев может составить проблему.
Возможна также и иная схема, когда несколько веб-серверов работают с одним сервером 1С. Это оправдано, когда следует разделить набор доступных баз и обеспечить разный уровень безопасности, высокий для внешних пользователей и стандартный для внутренних, либо обеспечить балансировку нагрузки.
Также возможны и любые иные комбинации, которые ограничены только вашими возможностями и потребностями. А с учетом относительной нетребовательности веб-сервера к ресурсам, для них можно использовать виртуальные машины или контейнеры. Например, мы имеем хороший опыт по использованию контейнеров в системе виртуализации Proxmox.
Настройка сервера
В первую очередь установим веб-сервер Apache, так как 1С:Предприятие, начиная с версии платформы 8.3.8 поддерживает актуальную версию Apache 2.4, то вся установка сводится к единственной команде:
apt install apache2
Компания 1С рекомендует использовать модуль мультипроцессной обработки worker, поэтому следует выяснить с каким модулем работает ваш сервер, для этого выполним:
apachectl -V | grep -i mpm
Если это prefork или event, то их следует отключить:
a2dismod mpm_prefork
или
a2dismod mpm_event
После чего включим worker и перезапустим веб-сервер:
a2enmod mpm_worker
systemctl restart apache2
Установка модуля расширения веб-сервера для платформы 8.3.19 и ниже
Установим модуль расширения веб-сервера от 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
Если все делать «по инструкции», то следующими шагами должна быть установка прав на папки и файлы, но на практике этого не требуется, так как модуль веб-сервера работает только на чтение и имеет для этого все права с настройками по умолчанию.
Установка модуля расширения веб-сервера для платформы 8.3.20 и выше
Начиная с платформы 8.3.20 компания 1С перешла на единый дистрибутив, который также следует скачать с официального сайта, он поставляется в виде архива с именем типа server64_8_3_20_1710.tar.gz, где 8_3_20_1710 — версия платформы.
Если вы используете Debain 11, то нужно добавить репозиторий от предыдущего выпуска для установки библиотеки libenchant1c2a:
echo "deb http://ftp.ru.debian.org/debian buster main" > /etc/apt/sources.list.d/buster.list
Не забудьте после этого обновить список пакетов:
apt update
Теперь перейдем в директорию с единым дистрибутивом (в нашем случае это домашняя директория) и распакуем его:
cd ~
tar -xzf server64_8_3_20_1710.tar.gz
Для установки расширения веб-сервера запустите инсталлятор с ключами:
./setup-full-8.3.20.1710-x86_64.run --mode unattended --enable-components ws
Никаких действий больше предпринимать не нужно.
Публикация клиент-серверных баз
Перед тем как публиковать базу нужно выполнить некоторые условия. Обращаться к серверу 1С можно только по имени хоста, которое веб-сервер должен разрешать в IP-адрес, в доменных сетях это решается использованием доменных DNS, но в любом случае разрешение имен следует проверить.
Для одноранговых сетей следует добавить запись в файл /etc/hosts:
192.168.16.130 SRV-1C
Где SRV-1C имя вашего сервера 1С, перед которым указываем его IP-адрес.
Затем создадим директорию для публикации информационной базы, расположение может быть любым, но хорошим тоном для Linux-систем будет использование стандартных расположений, для веб-сервера это /var/www:
mkdir /var/www/infobase
После чего можно перейти непосредственно к публикации, для этого будем использовать утилиту webinst, предварительно перейдя в каталог с ее расположением. Обратите внимание, что на платформах 8.3.17 и ниже использовался следующий путь:
cd /opt/1C/v8.3/x86_64
Начиная с платформы 8.3.18 стало возможным устанавливать сразу несколько версий и поэтому путь к расположению файлов платформы изменился и содержит номер ее версии:
cd /opt/1cv8/x86_64/8.3.20.1710
Для публикации баз используйте команду:
./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 — путь к конфигурационному файлу веб-сервера
После чего следует перезапустить веб-сервер:
systemctl restart apache2
Теперь можно подключаться к базе. Есть два варианта: использовать веб-клиент, работающий через браузер или тонкий клиент, установив нужную версию платформы. Мы не рекомендуем использовать веб-клиент, потому как его возможности не позволяют использовать весь функционал платформы, например, у нас он стабильно падал при попытке использовать Планировщик в 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 добавьте в конце каждой строки:
contrib
а в Ubuntu раскомментируйте строки содержащие в конце
multiverse
В Debain 11 нужно также добавить репозиторий от предыдущего выпуска для установки библиотеки libenchant1c2a:
echo "deb http://ftp.ru.debian.org/debian buster main" > /etc/apt/sources.list.d/buster.list
Затем выполните:
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_bases/InfoBase2
И поместим в нее любым доступным способом, скажем, через SFTP, файл базы данных 1Cv8.1CD, имейте ввиду, что клиента 1С на веб-сервере нет и загрузить на нем DT-файл мы не можем, поэтому его нужно развернуть в другом месте и передать на сервер именно 1CD.
Затем обязательно изменим владельца директории на пользователя веб-сервера:
chown -R www-data:www-data /opt/1C_bases
Создадим каталог публикации:
mkdir /var/www/infobase2
Затем перейдем с каталог с установленной платформой, для версии 8.3.17 и ниже выполните:
cd /opt/1C/v8.3/x86_64
Для 8.3.18 и выше (учитывайте, что путь содержит номер платформы):
cd /opt/1cv8/x86_64/8.3.20.1710
Теперь можно публиковать базу:
./webinst -publish -apache24 -wsdir InfoBase2 -dir /var/www/infobase2 -connstr "File=/opt/1C_base/InfoBase2;" -confpath /etc/apache2/apache2.conf
Перезапустим веб-сервер и базой можно работать:
systemctl restart apache2
Но для работы следует использовать исключительно тонкий клиент, так как веб-клиент не сможет получить лицензию.
Для корректной работы с файловыми базами следует ограничить Apache одним рабочим процессом, в противном случае вы можете столкнуться с ошибкой Объект заблокирован. Чтобы избежать этого, откроем /etc/apache2/mods-available/mpm_worker.conf и установим следующие значения:
StartServers 1
MinSpareThreads 1
MaxSpareThreads 1
Если вы используете иные модули мультипроцессной обработки, то нужно внести изменения в их конфигурационные файлы, для event это /etc/apache2/mods-available/mpm_event.conf, настройки выполняются аналогично модулю worker (приведены выше).
В случае использования prefork откройте /etc/apache2/mods-available/mpm_prefork.conf и установите следующие значение опциям:
StartServers 1
MinSpareServers 1
MaxSpareServers 1
После чего не забудьте перезапустить веб-сервер.
Данная настройка может существенно снизить производительность и поэтому мы не рекомендуем совмещать на одном сервере публикацию файловых и клиент-серверных баз, особенно при большом количестве обслуживаемых клиентов.
Особенности обновления платформы 8.3.18 и выше
Несмотря на то, что начиная с этой версии можно устанавливать сразу несколько платформ расширение веб-сервера может работать только с одной версией платформы, поэтому предыдущие версии при обновлении нужно удалить, автоматической замены версии пакета, как это было в 8.3.17 и ниже не произойдет.
Для платформ 8.3.18 — 8.3.19 выполните:
apt remove 1c-ent*
Для 8.3.20 и выше:
/opt/1cv8/x86_64/8.3.20.1549/uninstaller-full
Затем установите новую версию платформы, как это сделать — смотрите в соответствующем разделе нашей статьи.
После чего откройте файл /etc/apache2/apache2.conf и найдите в нем строку:
LoadModule _1cws_module "/opt/1cv8/x86_64/8.3.20.1549/wsap24.so"
И исправьте в ней путь согласно установленной вами версии платформы, после чего перезапустите веб-сервер:
systemctl restart apache2
Как видим, никаких особых сложностей при обновлении платформы нет, но следует учитывать особенности и изменения в последних выпусках 1С.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Previous Story
Обратный SSL-прокси к 1С
Next Story
Команда Shutdown: выключение и перезагрузка Windows из командной строки
Latest from Blog
Как настроить FreePBX с помощью Docker (сборка Docker-контейнера FreePBX). В этом посте мы расскажем о FreePBX , его функциях
Продолжаем изучать работу с единым дистрибутивом платформы 1С:Предприятие для Linux, который появился в версии 8.3.20. В
Установка и обновление сервера 1С:Предприятие после перехода на единый дистрибутив стала еще проще. Но хорошо, если у вас
Asterisk — это бесплатный инструмент с открытым исходным кодом для создания/разработки коммуникационных приложений. Он был разработан Марком Спенсером из Digium
Связка из Postfix и Dovecot плюс стандартный обвес из антивируса, антиспама и прочих утилит. Доменные имена
по материалам
Введение
Сконфигурируем рабочее место программиста 1С, которое будет состоять из следующих компонентов:
- Платформа 1С Предприятие 8 в составе конфигуратора и клиента (Windows)
- Сервер 1С:Предприятие 8 (Linux)
- Инструмент администрирования сервера 1С:Предприятие 8 (Windows)
- Сервер PostgreSQL 11.5 (Linux)
- Инструмент администрирования сервера PostgreSQL pgAdmin 4 (Windows)
- Для проверки работоспособности системы загрузим на сервер 1С:Предприятие демонстрационную базу.
Компания 1С гарантирует работу своих продуктов только в следующих дистрибутивах Linux:
- RPM версии дистрибутива Linux (RED HAT PACKAGE MANAGER, семейство систем Linux построенных на базе дистрибутива системы Red Hat)
- Red Hat Enterprise Linux 7 (отсутствует в Microsoft Store)
- CentOS 7 (в Microsoft Store имеется платный дистрибутив для WSL)
- Debian: версии 9 (в Microsoft Store имеется дистрибутив для WSL)
- Ubuntu: версии 18.04 LTS (в Microsoft Store имеется дистрибутив для WSL)
- Mint: версии 19 (отсутствует в Microsoft Store)
Подготовка
Windows 10
Вся работа будет происходит в операционной системе Windows 10. Необходима 64-битная версия ОС. Номер сборки требуется 1607 и старше. Вариант Windows не важен. Будет работать и на Prof и на Home.
Папка с локальным репозиторием
В системе Windows на диске С: создадим папку TMP_C
, которую будем считать локальным репозиторием. Дистрибутивы, которые потребуются для лабораторной работы будем сохранять в этой папке.
Дистрибутивы
Все скаченные дистрибутивы сохраняем в папку C:TMP_C
Сервер 1С:Предприятия (64-bit) для DEB-based Linux-систем скачиваем из репозитория компании 1С releases.1c.ru/project/Platform83 Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем
Технологическая платформа 1С:Предприятия (64-bit) для Windows версии 8.3.16.1148 скачиваем из того же репозитория
Дистрибутив СУБД PostgreSQL для Linux x86 (64-bit) одним архивом (DEB) скачиваем из репозитория компании 1С releases.1c.ru/project/AddCompPostgre Для работы потребуется дистрибутив последней версии
Зависимости (служебные библиотеки) postgres для Ubuntu 18.04.3-server x8664 от 20.12.2019 находятся в разделе Дополнительные материалы репозитория PostgreSQL (_внизу).
pgAdmin v.4 скачиваем с официального репозитория проекта postgresql.org/ftp/pgadmin/pgadmin4/ Требуется версия для Windows версии 4.17
Включение WSL
Для того, чтобы установить Linux требуется включить компоненту Windows под названием Подсистема Windows для Linux. После включения компоненты потребуется перезагрузить компьютер.
Управление компонентами находится в Панель управления – Программы – Включение или отключение компонентов Windows.
Установка Linux
План установки:
- Установить Linux из магазина приложений Microsoft Store
- Первый запуск Linux
- Обновить Linux
- Установить локаль русского языка
- Присвоить хосту статический ip адрес
- Установить необходимые дополнительные пакеты
Установка Linux
Как писалось выше, дистрибутивы Linux, которые работают под управлением WSL располагаются в магазине приложений Microsoft Store. Устанавливать будем систему Ubuntu 18.04 LTS (Long-term support это продукты с длительным сроком поддержки, например для Ubuntu 18.04 LTS срок поддержки равен 10 лет). В поиске магазина приложений введите ubuntu 18.04 lts и перейдите на страницу установки.
Далее нажмите кнопку Получить и дождитесь окончания установки.
Или же скачайте установочный архив с сайта магазина:
Debian: | https://aka.ms/wsl-debian-gnulinux |
Ubuntu 18.04: | https://aka.ms/wsl-ubuntu-1804 |
Ubuntu 16.04: | https://aka.ms/wsl-ubuntu-1604 |
openSUSE: | https://aka.ms/wsl-opensuse-42 |
SLES: | https://aka.ms/wsl-sles-12 |
Кали: | https://aka.ms/wsl-kali-linux |
wget https://aka.ms/wsl-ubuntu-1804 -O C:TMP_CUbuntu.zip
unzip Ubuntu.zip -d ./Ubuntu
Или с помощью PowerShell запустите
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile C:/TMP_C/Ubuntu.zip -UseBasicParsing
Expand-Archive C:/TMP_C/Ubuntu.zip C:/TMP_C/Ubuntu/
Перейдите в папку C:/TMP_C/Ubuntu
и запустите ubuntu.exe
Первый запуск Linux
После установки необходимо сделать первый запуск и выполнить указания системы. Linux можно запустить несколькими способами:
- Кнопка Пуск -> Ubuntu 18.04 LTS
- Открытие нового окна терминала в ConEmu с помощью команды {Bash::bash}
- Команда wsl набранная в командной строке Windows
- Команда bash набранная в командной строке Windows
При первом запуске система закончит свою установку и настройку после чего попросит вас указать имя пользователя и пароль, под которым вы будете работать в Linux.
Обновление Linux
Ubuntu установленная из магазина Microsoft Store имеет номер релиза 20190521 от 08.05.2018г. Рекомендуется перед началом использования обновить Linux на актуальный релиз. Обновления пакетов выполняются от имени суперпользователя. Будем использовать программу apt (advanced packaging tool), которая предназначена для установки, обновления и удаления программ в операционных системах Linux построенных на базе Debian.
Обновим информацию о последних версиях пакетов установленных в системе
user@PC:~$ sudo apt update
Просмотрим список пакетов, которые можно обновить
user@PC:~$ apt list –upgradable
Обновим все пакеты, которые могут быть обновлены
user@PC:~$ sudo apt upgrade
Установка локали ru_RU
Локаль locale в Linux примерно соответствует региональным настройкам в Windows 10 и определяет язык, который доступен системе, формат чисел, дат и денежных единиц.
Список доступных локалей на вашей машине можно получить, используя команду loicale.
По умолчанию в системе установлена одна локаль.
Наименование локали состоит из наименования языка en, наименования региона US и наименования кодировки utf8
user@PC:~$ locale -a
en_US.utf8
Для корректной работы платформы 1С:Предприятие требуется русская локализации. Для ее установки воспользуемся пакетом locales
Команда конфигурирования локали.
Требуются полномочия суперпользователя.
user@PC:~$ sudo dpkg-reconfigure locales
Настройка этого пакета идет в псевдографическом интерфейсе. На первом экране необходимо выбрать локаль ru_RU.UTF-8 UTF-8 и отметить ее нажатием клавиши пробел. Нажмите Enter для перехода к следующему экрану, где необходимо выбрать локаль по умолчанию ru_RU.UTF-8. Для завершения настройки требуется нажать клавишу Enter и перезагрузить терминал.
После настройки список установленных в системе локалей расширится
После настройки стала доступна русская локализация
user@PC:~$ locale -a
en_US.utf8
ru_RU.utf8
Статический IP адрес хоста
Для работы с приложениями на сервере Linux нам потребуется зафиксировать IP адрес вашей машины и связать его с именем хоста.
Настройка маршрутизатора
Компьютер, на котором работает сервер Linux должен иметь постоянный статический адрес. Обычно IP адрес компьютеру выдается сервером DHCP (Dynamic Host Configuration Protocol), который работает на маршрутизаторе. Сервер DHCP не обязан выдавать один и тот же IP адрес компьютеру и чаще всего не выдает. Для того, чтобы у компьютера IP адрес был статическим необходимо настроить маршрутизатор.
Потребуется:
- Определить диапазон IP адресов, которые будет раздавать DHCP сервер, например 192.168.0.100 – 192.168.0.255
- Добавить в таблицу статических адресов IP адрес и MAC-адрес (Media Access Control) вашего устройства
- Перезагрузить маршрутизатор и компьютер
На маршрутизаторах разных производителей эта операция выполняется по-разному, но инструкцию несложно найти поиском в Интернете по запросу Настройка статического ip на роутере ХХХ, где ХХХ это модель вашего роутера.
Как пример статический адрес моего домашнего компьютера 192.168.1.10
Определение IP адреса и имени хоста на сервере Linux
С помощью утилиты ipconfig
проверим, что статический IP адрес выдан компьютеру. С помощью команды hostname
получим наименование компьютера (хоста), на котором работает сервер Linux.
Программа ipconfig выводит информацию о сетевом окружении компьютера в том числе IP адрес хоста:
user@PC:~$ ifconfig
eth0: flags=4163<UP,BROADCAST> mtu 1500
inet 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255
...
Команда hostname
выводит в консоль имя хоста, к которому подключен ваш терминал:
Связывание IP адреса и имени хоста
С сервером 1C:Предприятие который будет установлен на Linux сервер мы планируем работать и управлять из под Windows. Для корректной работы в Windows установим соответствие IP адреса и имени хоста. Для этого внесем изменения в фале hosts, который располагается в папке %windir%system32driversetc
Файл hosts это конфигурационный текстовый файл. При помощи текстового редактора ConEmu необходимо добавить в конец файла следующую строку
IP-address hostname
Где: IP-address
статический адрес компьютера, hostname
имя хоста.
Например, на моем компьютере в файл hosts добавлена следующая строка:
192.168.1.10 PC
Установка сервера 1С:Предприятие
перед началом установки сервера 1С:Предприятие:
Сервер 1С:Предприятие установленный в ОС Linux не проверяет серверный ключ защиты если используется один рабочий процесс и количество клиентских подключений не более 12. Однако, и это важно, компания 1С предоставляя такую техническую возможность не предоставляет юридического разрешения эксплуатировать сервер 1С:Предприятие таким образом. Иными словами для законного использования сервера 1С:Предприятие требуется приобретение лицензии.
Дополнительные библиотеки
Для корректной работы сервера 1С:Предприятие потребуются следующие библиотеки
Библиотека | Назначение | |
---|---|---|
libwebkitgtk-3.0-0 | webkitgtk-3.0.0 | |
libMagickWand-6.Q16 | ImageMagick требуется для построения диаграмм | |
libfontconfig | Требуется для сохранения файлов в формате PDF | |
libfreetype6 | Требуется для сохранения файлов в формате PDF | |
libgsf-1-common | Требуется для работы с файлами в формате XLS | |
libglib2.0 | Требуется для работы с внешними источниками данных | |
unixodbc | Требуется для работы с внешними источниками данных | |
libkrb5-3 | Требуется для работы механизма аутентификации | |
libgssapi-krb5-2 | Требуется для работы механизма аутентификации |
Требуемые, для работы сервера 1С:Предприятие библиотеки можно установить одним вызовом программы apt. Для этого в качестве параметра необходимо указать список всех библиотек через пробел:
Установка всех пакетов одной командой:
user@PC:~$ sudo apt install libwebkitgtk-3.0-0 libMagickWand-6.Q16 libfontconfig libfreetype6 libgsf-1-common libglib2.0 unixodbc libkrb5-3 libgssapi-krb5-2
Дополнительные шрифты
Для корректной работы платформы 1С:Предприятие потребуется установить дополнительные шрифты и перестроить файл настроек шрифтов.
Установим дополнительные шрифты:
user@PC:~$ sudo apt install ttf-mscorefonts-installer
Утилита fc-cache пересоздает файл ./etc/fonts/fonts.conf
в котором находятся настройки шрифтов
Установка сервера 1С:Предприятие
Ранее мы скачали архив дистрибутива сервера 1С:Предприятия (64-bit) для DEB-based Linux-систем из репозитория компании 1С в свой локальный репозиторий, который как мы договорились располагается в папке C:TMP_C. Далее требуется извлечь из архива пакеты, предназначенные для установки. Выполним следующие действия в консоли Linux и за одно потренируемся управлять системой.
- В домашней папке пользователя создадим каталог DISTR/1CSRV (дистрибутив сервера 1С). Все дальнейшие манипуляции с архивами и дистрибутивами сервера 1С будем выполнять в этой папке.
user@PC:~$ mkdir ~/DISTR/1CSRV/
- Скопируем архив deb64_8_3_16_1148.tar.gz из папки C:TMP_C операционной системы Windows 10 в папку ~/DISTR операционной системы Linux. Обратите внимание, именно здесь проявляется сила подсистемы WSL. ОС Linux доступны все ресурсы нашего компьютера, включая диски и папки Windows.
user@PC:~$ cp -fi /mnt/c/TMP_C/deb64_8_3_16_1148.tar.gz ~/DISTR/1CSRV/
- Распакуем архив deb64_8_3_16_1148.tar.gz с помощью утилиты tar (tape archive)
user@PC:~$ tar -xvf ~/DISTR/1CSRV/deb64_8_3_16_1148.tar.gz
После подготовительных операций в каталоге DISTR будут находиться пакеты для установки сервера 1С:Предприятия и системы ключевой защиты.
Следующие пакеты требуется установить в указанной последовательности:
Порядок установки | Наименование пакета | Назначение пакета |
---|---|---|
1 | 1c-enterprise83-common_8.3.16-1148_amd64.deb | Пакет содержит общие компоненты «1С:Предприятия» |
2 | 1c-enterprise83-server_8.3.16-1148_amd64.deb | Пакет содержит компоненты сервера «1С:Предприятия» и утилита контроля целостности |
3 | 1c-enterprise83-ws_8.3.16-1148_amd64.deb | Пакет содержит адаптер для публикации Web-сервисов «1С:Предприятия» на веб-сервере на основе Apache HTTP Server 2.0, 2.2 или 2.4 |
Установим пакеты. Для установки пакетов из локального репозитория (из папки на диске) пакетному менеджеру требуется указать полный путь до пакета. Удобно перед установкой пакетов перейти в папку репозитория и тогда можно указывать относительный путь до пакета.
user@PC:~$ cd ~/DISTR/1CSRV/
user@PC:~/DISTR/1CSRV$
user@PC:~/DISTR/1CSRV$ sudo apt install ./1c-enterprise83-common_8.3.16-1148_amd64.deb ./1c-enterprise83-server_8.3.16-1148_amd64.deb ./1c-enterprise83-ws_8.3.16-1148_amd64.deb
Установка системы защиты HASP сервера 1С:Предприятие
Предлагаю самостоятельно ознакомится с инструкцией на сайте its.1c.ru
Включение режима отладки на сервере
Изменим настройки сервера 1С:Предприятие и включим возможность проводить отладку на сервере. Для этого нам потребуется внести изменения в конфигурационный файл сервера srv1cv83, который находится в папке /etc/init.d
Данную процедуру необходимо сделать до запуска сервиса сервера 1С:Предприятие.
открыть конфигурационный файл srv1cv83 сервера 1С:Предприятие в редакторе nano
user@PC:~$ sudo nano /etc/init.d/srv1cv83
С помощью редактора nano в конфигурационном файле нужно установить параметр SRV1CV8_DEBUG.
Так было:
# 1C:Enterprise server configuration debug mode
# 0 — default — off
# 1 — on
#
#SRV1CV8_DEBUG
так стало:
# 1C:Enterprise server configuration debug mode
# 0 — default — off
# 1 — on
#
SRV1CV8_DEBUG=1
Запуск службы сервера 1С:Предприятие
Сервис сервера 1С:Предприятие называется srv1cv83
. Для того, что бы сервер 1С:Предприятие работал сервис должен быть запущен. Ниже приведены команды управления сервисом:
- проверить статус сервиса
user@PC:~$ service srv1cv83 status
1C:Enterprise 8.3 server status:
Init script: STARTED.
Ragent: RUNNING.
- запустить сервис
user@PC:~$ sudo service srv1cv83 start
Starting 1C:Enterprise 8.3 server: OK
- остановить сервис
user@PC:~$ sudo service srv1cv83 stop
Stopping 1C:Enterprise 8.3 server: OK
Установка сервера PostgreSQL
Дополнительные библиотеки
Сервер баз данных PostgreSQL требует, чтобы в операционной системе Linux были установлены дополнительные библиотеки или другими словами, зависимости.
Архив ubuntu_18.04.3_server.x64.tar.gz со всеми необходимыми библиотеками мы заранее скачали в папку Windows C:TMP_C
Для удобства создадим в папке DISTR, которая располагается нашей домашней папке каталог SQLDEP (SQL Dependence) и распакуем в него содержимое архива
user@PC:~$ cd ~
user@PC:~$ mkdir ~/DISTR/SQLDEP/
user@PC:~$ cp /mnt/c/TMP_C/ubuntu_18.04.3_server.x64.tar.gz ~/DISTR/SQLDEP/
user@PC:~$ cd ~/DISTR/SQLDEP/
user@PC:~/DISTR/SQLDEP$ tar -xvf ~/DISTR/SQLDEP/ubuntu_18.04.3_server.x64.tar.gz
user@PC:~/DISTR/SQLDEP$ ls -l ~/DISTR/SQLDEP/
В папке ~/DISTR/SQLDEP/ ubuntu 18.04.3-server.x64/ находятся следующие файлы дистрибутивов:
libicu55:amd64 | библиотека интернационализации для Unicode |
libllvm9:amd64 | программная инфраструктура для создания компиляторов и сопутствующих им утилит |
postgresql-client-common | менеджер управления клиентамиPostrgeSQL |
postgresql-common | менеджер кластера PostrgeSQL |
ssl-cert | оболочка для библиотеки OpenSSL |
Установим эти библиотеки
user@PC:~$ cd ~/DISTR/SQLDEP/ubuntu 18.04.3-server.x64/
user@PC:~/DISTR/SQLDEP/ubuntu 18.04.3-server.x64$ sudo apt install ./*.deb
Установка сервера PostgreSQL
После установки необходимых библиотек установим сам сервер баз данных. Архив дистрибутива сервера postgresql_11.5_12.1C_amd64_deb.tar.bz2 мы заранее
скачали в папку Windows C:TMP_C
По аналогии с предыдущим шагом создадим в папке DISTR каталог SQL и распакуем в него содержимое архива.
user@PC:~$ cd ~
user@PC:~$ mkdir ~/DISTR/SQL/
user@PC:~$ cp /mnt/c/TMP_C/postgresql_11.5_12.1C_amd64_deb.tar.bz2 ~/DISTR/SQL/
user@PC:~$ cd ~/DISTR/SQL/
user@PC:~/DISTR/SQL$ tar -xvf ~/DISTR/SQL/postgresql_11.5_12.1C_amd64_deb.tar.bz2
user@PC:~/DISTR/SQL$ ls -l ~/DISTR/SQL/
В папке ~/DISTR/SQL/postgresql-11.5-12.1C_amd64_deb находятся следующие файлы дистрибутива:
libpq5_11.5-12.1C | служебная библиотека сервера PostgreSQL для программирования приложений на языке С (сборка компании 1С) |
postgresql-11_11.5-12.1C | серверная часть сервера PostgreSQL (сборка компании 1С) |
postgresql-client-11_11.5-12.1C | клиентская часть сервера PostgreSQL (сборка компании 1С) |
Установим сервер
user@PC:~$ cd ~/DISTR/SQL/postgresql-11.5-12.1C_amd64_deb/
user@PC:~/DISTR/SQL/postgresql-11.5-12.1C_amd64_deb$ sudo apt install ./*.deb
Защита пакетов от обновлений
Платформа 1С:Предприятие работает только с сервером PostgreSQL который собирает компания 1С.
Платформа 1С:Предприятие не будет работать с сервером PostgreSQL если тот обновиться на оригинальные пакеты от компании Postgres (так называемая ванильная версия).
Такое может произойти при обновлении системы Linux. 4 пункт Обновление Linux. Для защиты сервера базы данных от неконтролируемого обновления зафиксируем версии дистрибутива
user@PC:~$ cd ~
user@PC:~$ sudo apt-mark hold libpq5
user@PC:~$ sudo apt-mark hold postgresql-11
user@PC:~$ sudo apt-mark hold postgresql-client-11
user@PC:~$ apt-mark showhold
Запуск и начальная настройка сервера
Только что установленный сервер баз данных требуется запустить. Для этого воспользуемся программой управления сервисами services.
Проверим текущий статус сервиса PostgreSQL. Видно, что сервис остановлен, а сам сервер баз данных слушает порт 5432.
user@PC:~$ service postgresql status
11/main (port 5432): down
Запустим сервис. Потребуются привилегии суперпользователя
user@PC:~$ sudo service postgresql start
Во время установки сервера PostgreSQL в систему Linux был добавлен пользователь postgres
. В этом легко убедиться, воспользовавшись утилитой вывода в консоль содержимого файлов cat (concatenate)
Просмотрим содержимое файла passwd, который содержит список всех пользователей системы. Вывод этой команды показан частично.
user@PC:~$ cat /etc/passwd
pen:x:1000:1000:,,,:/home/pen:/bin/bash
usr1cv8:x:999:1001:1C Enterprise 8 server launcher:/home/usr1cv8:/bin/sh
postgres:x:113:118:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
Все операции с сервером баз данных будем выполнять от имени пользователя postgres
. Перед началом использования сервера SQL необходимо задать пароль этого пользователя. Воспользуемся интерактивным терминалом PostgreSQL psql.
user@PC:~$ sudo su postgres
postgres@PC:/home/pen$
postgres@PC:/home/pen$ cd ~
postgres@PC:~$ psql
postgres=#
postgres=# ALTER USER postgres WITH PASSWORD '1111';
ALTER ROLE
postgres=# q
postgres@PC:~$
Готово, пароль пользователя postgres установлен на “1111”, теперь осталось выйти из этого пользователя и вернуться в нашего стандартного пользователя.
Выйдем из пользователя postgres с помощью команды exit
. Обратите внимание на то как изменилась строка приглашения.
postgres@PC:~$ exit
user@PC:~$
Установка оснасток серверов
Установка оснастки администрирования сервера 1С:Предприятие
Оснастка администрирования работает в Windows 10 и управляет сервером 1C:Предприятие, который работает на Linux.
Оснастка как компонента входит в дистрибутив платформы 1С:Предприятие 8 (х86-64) для Windows.
Если оснастка уже установлена, то в программной группе 1C:Предприятие 8 (х86-64) вы увидите программу Администрирование серверов 1С Предприятия x86-64.
Если такой программы нет, то ее требуется установить.
Установить оснастку можно при начальной установке платформы 1С:Предприятие 8 (х86-64) включив компоненту Администрирование сервера 1С Предприятия x86-64.
Если при начальной установке платформы оснастка не была установлена, то можно это сделать позже. Выполните в Windows 10 следующие действия.
Откройте Параметры системы Windows и далее Установка и удаление программ. Выберите установленный программный продукт 1C:Предприятие 8 (х86-64)
и нажмите кнопку Изменить. В открывшемся окне Обслуживание программ выберите опцию Изменить и нажмите кнопку Далее.
В окне Выборочная установка включите установку компоненты Администрирование сервера 1С Предприятия x86-64 и нажмите кнопку Далее.
Для изменения набора компонент вам потребуется дистрибутив соответствующей версии.
Установка pgAdmin4
Программа pgAdmin4 предназначена для интерактивного управления и администрирования серверов PostgreSQL в системе Windows. Программа работает в браузере.
Для установки запустите файл инсталляции pgadmin4-4.18-x86.exe, который мы ранее скачали и сохранили в папке C:TMP_C
. Следуйте шагам установки соглашаясь с рекомендуемыми параметрами.
После установки оснастка управления сервером PostgreSQL будет находиться в программной группе pgAdmin 4.
При запуске она откроется в WEB браузере, который установлен как браузер по умолчанию. При этом сервис postgresql
в Linux должен работать.
Первым откроется окно для ввода пароля пользователя postgres
.
Укажите пароль, который мы установили на этапе настройки сервера. В нашем примере пароль это 1111.
Если сервис postgresql не запущен, то при попытке подключится к серверу pgAdmin выдаст сообщение:
could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host “192.168.1.10” and accepting TCP/IP connections on port 5432?
Создание кластера серверов
Сервера установлены и работают. Пора создать кластер серверов 1С:Предприятие.
Проверим, что сервисы серверов работают. Удобно воспользоваться командой top (table of processes) которая является аналогом диспетчера задач в Linux.
Среди работающих процессов в колонке COMMAND вы должны увидеть процессы с наименованиями postgres и ragent
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2700 postgres 20 0 297012 15264 7300 S 1,7 0,0 0:05.67 postgres
2438 usr1cv8 20 0 173940 25664 23576 S 0,0 0,0 0:00.37 ragent
Что бы выйти из программы top и вернуться в терминал нажмите [Ctrl + C]
Если сервера остановлены, то запустим их
Запустим сервис postgresql. Потребуются привилегии суперпользователя
user@PC:~$ sudo service postgresql start
Запустим сервис srv1cv83. Потребуются привилегии суперпользователя
user@PC:~$ sudo service srv1cv83 start
Дальнейшие операции будут проводиться в Windows в оснастке администрирования серверов 1С:Предприятие.
Создание центрального сервера 1С:Предприятие
Кластер серверов состоит из центрального сервера и рабочих серверов. Центральный сервер главная часть кластера. Он один и он обязателен. Рабочие сервера в кластере создаются при необходимости и могут отсутствовать.
В оснастке на элементе дерева Central 1C:Enterprise 8.3 servers нажимаем правую кнопку мыши и выбираем команду Создать Центральный сервер 1С:Предприятия 8.3
В окне Новый центральный сервер заполняем поля:
Имя. Указываем имя хоста, который связан с IP адресом нашей машины, В моем случае имя хоста PC
Описание. Понятный комментарий к серверу, например Центральный сервер PC
Поля, Протокол и IP порт не меняем и оставляем значения по умолчанию.
Создание кластера сервера
Кластер серверов это точка входа к которой подключаются клиенты 1C:Предприятие. Кластером серверов управляет центральный сервер.
В оснастке на элементе дерева Кластеры нажимаем правую кнопку мыши и выбираем команду Создать Кластер.
В окне Новый кластер заполняем поля:
Имя кластера. Указываем имя нашего кластера, например PEN-Cluster
Компьютер. Указываем имя компьютера, на котором работает центральный сервер кластера. В нашем примере это PC
IP Порт. Указываем порт по умолчанию для менеджера кластера 1541
Отключение IPv6
Необходимо на машине, на которой работает центральный сервер кластера отключить интернет протокол IPv6. Если этого не сделать при работе сервера будут выдаваться сообщения об ошибках.
Загрузка демонстрационной конфигурации
Создание пустой базы
В системе Windows запустим платформу 1C и создадим новую информационную базу. Создадим информационную базу без конфигурации (пустую) для того, чтобы в дальнейшем загрузить туда демонстрационную базу. Дадим наименование Демонстрационная база. Тип расположения информационной базы на сервере 1С:Предприятия.
Заполним карточку новой базы:
Кластер серверов. Укажем имя хоста, на котором работает центральный сервер кластера. В моем примере это PC
Имя информационной базы в кластере. Укажем имя DemoDB
Тип СУБД. Выберем PostgreSQL
Сервер баз данных. Укажем имя хоста, на котором работает сервер баз данных. В моем примере это PC
Имя базы данных. Укажем имя DemoDB
Пользователь базы данных. Имя пользователя postgres
Пароль пользователя. Пароль пользователя базы данных нами установлен как 1111
.
Остальные параметры оставим по умолчанию и закончим создание новой базы.
Загрузка демонстрационной базы
Перед этим мы сохранили архив с демонстрационной базой, которую предоставляет компания 1С.
Распакуем архив с демонстрационной базой demodt_8_3_16_1148.zip в папку локального репозитория. В архиве содержится выгрузка информационной базы 1cv8.dt.
Загрузим выгрузку информационной базы в нашу пустую базу используя конфигуратор.
Войдем в базу в пользовательском режиме.
Итак, мы настроили рабочее место программиста на Linux.
в тексте 3476 слов
Имеется windows-сервер c 1С 8.3 (БД — MSSQL).
Задача — настроить публикацию базы на линуксовом web-сервере.
Тонкости — модуль 1С для апача работает только с 2.0 и 2.2, а текущая версия в большинстве дистрибутивов — 2.4+
Пишется больше для себя, чтобы не забыть. Ну и мало ли, вдруг пригодится еще кому — не придется бегать по форумам в поисках нужных команд.
Железо — дал гигабайт оперативки, одно ядро и 20 гигабайт диска. Увеличить никогда не поздно.
ОС: Debian Stable, привык я к нему.
Ставлю минимум, включая ssh-сервер, но не включая web. К этому еще вернемся.
После установки базовая настройка по вкусу, я обычно ставлю локаль utf8, ставлю sudo, mc и vim, остальное по потребностям.
Дальше надо поставить apache 2.2. Причем сделать это правильным способом, а не просто скачав deb-пакет.
Сперва добавляем в /etc/apt/sources.list строчки со ссылкой на предыдущую версию дистрибутива.
deb http://mirror.yandex.ru/debian/ wheezy main deb-src http://mirror.yandex.ru/debian/ wheezy main
Можно, конечно, написать oldstable — в настоящий момент тоже будет правильно. Но только в настоящий, потому рано или поздно выйдет новая стабильная версия и в oldstable и тогда вместо apache 2.2 там будет 2.4. Хотя, надеюсь, к тому времени 1С обновится и заработает с более новыми версиями апача. Но кто их знает?
Где mirror.yandex.ru — там пишется имя вашего любимого сервера с репозиторием.
Потом обновляем индексы — apt-get update — и смотрим, что у нас тут есть по apache командой apt-cache showpkg apache2
Там много всего выводится, но нас интересует только начало вывода:
Package: apache2 Versions: 2.4.10-10+deb8u3 (/var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_binary-i386_Packages) Description Language: File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_binary-i386_Packages MD5: d02426bc360345e5acd45367716dc35c Description Language: en File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_i18n_Translation-en MD5: d02426bc360345e5acd45367716dc35c Description Language: ru File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_i18n_Translation-ru MD5: d02426bc360345e5acd45367716dc35c 2.4.10-10+deb8u1 (/var/lib/apt/lists/security.debian.org_dists_stable_updates_main_binary-i386_Packages) Description Language: File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_binary-i386_Packages MD5: d02426bc360345e5acd45367716dc35c Description Language: en File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_i18n_Translation-en MD5: d02426bc360345e5acd45367716dc35c Description Language: ru File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_stable_main_i18n_Translation-ru MD5: d02426bc360345e5acd45367716dc35c 2.2.22-13+deb7u6 (/var/lib/apt/lists/mirror.yandex.ru_debian_dists_wheezy_main_binary-i386_Packages) Description Language: File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_wheezy_main_binary-i386_Packages MD5: d24f049cd70ccfc178dd8974e4b1ed01 Description Language: en File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_wheezy_main_i18n_Translation-en MD5: d24f049cd70ccfc178dd8974e4b1ed01 Description Language: ru File: /var/lib/apt/lists/mirror.yandex.ru_debian_dists_wheezy_main_i18n_Translation-ru MD5: d24f049cd70ccfc178dd8974e4b1ed01
Видим, что кроме 2.4.10 имеется версия 2.2.22-13+deb7u6 — то, что нужно.
Ставим: apt-get install apache2=2.2.22-13+deb7u6
Или, точнее: apt-get install apache2=2.2.22-13+deb7u6 apache2-mpm-worker=2.2.22-13+deb7u6 apache2.2-common=2.2.22-13+deb7u6 apache2.2-bin=2.2.22-13+deb7u6, а остальные зависимости уже подтянутся автоматом.
После этого ставим апачей на холд, чтобы не обновить случайно.
apt-mark hold apache2 apache2-mpm-worker apache2.2-common apache2.2-bin apache2 помечен как зафиксированный. apache2-mpm-worker помечен как зафиксированный. apache2.2-common помечен как зафиксированный. apache2.2-bin помечен как зафиксированный.
Можно запустить service apache2 start и стукнуть телнетом на 80 порт для проверки, если лень браузер запускать.
telnet localhost 80
Trying ::1... Connected to localhost. Escape character is '^]'. 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>501 Method Not Implemented</title> </head><body> <h1>Method Not Implemented</h1> <p>1 to /index.html not supported.<br /> </p> <hr> <address>Apache/2.2.22 (Debian) Server at 1cweb Port 80</address> </body></html> Connection closed by foreign host.
Ругается — значит работает.
Теперь ставим 1С.
Нужны только веб-сервисы 1С (пакет 1c-enterprise83-ws). И 1c-enterprise83-common, который в зависимостях прописан. И 1c-enterprise83-server, который в зависимостях не прописан, но без него утилита публикации пишет «Ошибка сегментирования».
В принципе, необходим только модуль для апача wsap22.so из пакета 1c-enterprise83-ws, а всё остальное можно через текстовый редактор сделать. Но я человек ленивый и лучше потрачу несколько мегабайт на 1С, чем буду руками вбивать строчки в конфиги.
Дальше надо создать папку для хранения настроек опубликованных БД 1С. Можно в дереве вебсервера, но я лучше отдельно сделаю, прямо в корне, /1с.
После этого из папки с установленными файлами 1С (/opt/1C/v8.3/i386) запускаем утилиту публикации webinst со следующими параметрами (публикую нашу тестовую базу):
./webinst -apache22 -wsdir testlitupp -dir /1c/testlitupp -connstr "Srvr=10.0.0.4;Ref=testlitupp;" -confPath /etc/apache2/apache2.conf Публикация выполнена
-apache22 — наша версия вебсервера
-wsdir testlitupp — папка на вебсервере, в которой будет доступна опубликованная база (http://вашсервер/testlitupp)
-dir /1c/testlitupp — папка, в которой будет храниться файл default.vrd с настройками публикации
-connstr «Srvr=10.0.0.4;Ref=testlitupp;» — ip сервера 1С и имя публикуемой базы данных
-confPath /etc/apache2/apache2.conf — путь к конфигу apache
Если было написано «Публикация выполнена», значит всё прошло удачно. Если пишет «Ошибка сегментирования», то вы, скорее всего, забыли поставить 1c-enterprise83-server.
По результатам имеем файл default.vrd
<?xml version="1.0" encoding="UTF-8"?> <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="/testlitupp" ib="Srvr=10.0.0.4;Ref=testlitupp;"/>
И несколько новых строк в файле конфигурации веб-сервера:
LoadModule _1cws_module "/opt/1C/v8.3/i386/wsap22.so" # 1c publication Alias "/testlitupp" "/1c/testlitupp/" <Directory "/1c/testlitupp/"> AllowOverride All Options None Order allow,deny Allow from all SetHandler 1c-application ManagedApplicationDescriptor "/1c/testlitupp/default.vrd" </Directory>
Перезапускаем апач (service apache2 restart) и идём смотреть, что там опубликовалось.
Опубликовалось, просит пароль.
И впускает в базу.
Работает. Дополнительные настройки публикации делаются через редактирование vrd-файлов (к примеру, включение отладки), а допиливанием интерфейса веб-клиента должны заниматься ваши программисты 1С.
Если будете дописывать опции, к примеру, с подключением сервисов руками, то не забудьте удалить в файле default.vrd последний слэш в строчке «base=»/testlitupp» ib=»Srvr=10.0.0.4;Ref=testlitupp;»
/>», я с этим долго возился. Если не удалить и что-то дописать после, то вылетает «ошибка 500» без дополнительной информации.
Какая будет нагрузка на вебсервер — я ещё не знаю, у нас это пока в тестовом режиме работает и хватает выделенных ресурсов. Но добавить памяти или ядер по мере увеличения потребностей проблем не составит.
В целом, в других дистрибутивах linux всё делается аналогично, различия только в способах установки старой версии apache.
В этой статье я покажу как подготовить свой web-сервер apache 2.4 на операционной системе Linux (Ubuntu 18.04) для публикации серверных и файловых баз 1С.
Для того, чтобы получить доступ к базе данных из интернета обычно применяют 2 способа:
- размещают базы 1С на терминальном сервере и дают доступ к этому серверу из интернета;
- публикуют базы 1С на web-сервере и дают доступ к этому web-серверу из интернета.
В первом случае нужен дорогой Windows Server, который на момент написания статьи стоит в районе 80 – 100 тыс. рублей. В добавок к этому нужны терминальные лицензии, которые тоже стоят денег.
Во втором случае можно использовать следующие web-сервера:
- IIS – входящий в операционную систему Windows, которую тоже нужно купить, хотя в этом случае подойдёт и десктопная Windows 10;
- apache 2.4 – бесплатный web-сервер, работающий на Linux. Таким образом ни за операционную систему, ни за сам web-сервер платить не нужно. В дополнение, открывать опубликованные базы можно будет с помощью web-браузера. Не будет проблем с прокидыванием принтеров и торгового оборудования на терминальный сервер.
После установки и подготовки операционной системы Ubuntu 18.04, а этот процесс я описывать не буду, займемся установкой web-сервера.
Во-первых установим зависимости для модуля 1С:
# apt install -y libfreetype6 libgsf-1-114 libglib2.0-0 unixodbc imagemagick
Следом установим шрифты, чтобы при открытии базы 1С всё красиво выглядело:
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb # apt install -y fontconfig xfonts-utils # dpkg -i ttf-mscorefonts-installer_3.6_all.deb # apt -f install # fc-cache -f -v
Хоть сервер 1С нам не нужен, но модуль для web сервера и утилита для публикации баз устанавливаются вместе с ним. Поэтому установить его придётся. Архив с дистрибутивом сервера 1С платформы 8.3.18.1483 можно скачать по следующей ссылке Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем. Затем его нужно положить в какой-нибудь каталог на нашем сервере.
Создадим каталог 1c, в который положим дистрибутив сервера 1С. Затем перейдем в него, распакуем и установим:
# mkdir 1c ###Перекинте скачанный архив в этот каталог### # cd 1c/ # tar -xvf deb64_8_3_18_1483.tar.gz # dpkg -i 1c-enterprise-8.3.18.1483-*.deb
Затем установим apache 2.4:
# apt install -y apache2
Дополнительно можем убрать страничку приветствия:
# echo "" > /var/www/html/index.html
Подключим модуль от 1С:
# echo 'LoadModule _1cws_module "/opt/1cv8/x86_64/8.3.18.1483/wsap24.so"' >> /etc/apache2/apache2.conf
После чего перезапускаем службу web-сервера:
# systemctl restart apache2.service
На этом всё, чуть позже покажу как:
- публиковать файловую или серверную базы;
- включить https на вашем web-сервере;
- опубликовать тонкий клиент для автоматического обновления ваших клиентов.
Спасибо за внимание!
Сводка
Имя статьи
Web-сервер apache 2.4 на Linux для публикаций баз 1С
Описание
В этой статье я покажу как подготовить свой web-сервер apache 2.4 на операционной системе Linux (Ubuntu 18.04) для публикации серверных и файловых баз 1С
Опубликовано: 27.12.2020
Используемые термины: 1С, Apache, Windows.
Один из сценариев публикации базы 1С — использование веб-сервера Apache на системе Windows. Это может быть актуально, если мы больше доверяем данному веб-серверу, вместо встроенного в Windows IIS. Описанные действия применимы для любой версии Windows от 7 до Server 2019. В моем примере использовались Windows Server 2012 R2, Apache 2.4, 1C 8.3.
Установка веб-сервера Apache
Публикация базы 1С
В графическом интерфейсе
В командной строке
Запуск опубликованной базы
Публикация нескольких баз
Другие инструкции по 1С
Установка Apache
Переходим на страницу загрузки официального сайта Apache и скачиваем нужную версию программы:
* в данном примере скачивается одна из последних версий на момент обновления инструкции — 2.4.46 для системы x64 с поддержкой SSL.
Загруженный архив распаковываем в любой каталог, например, C:Apache24.
Открываем командную строку от администратора и переходим в папку bin каталога, куда распаковали apache — в нашем случае:
cd C:Apache24bin
Запускаем установку apache как сервиса Windows:
httpd.exe -k install
Мы должны увидеть:
Installing the ‘Apache HTTP Server’ service
The ‘Apache HTTP Server’ service is successfully installed.
Testing httpd.conf….
Errors reported here must be corrected before the service can be started.
* наш веб-сервер успешно установлен.
В процессе запуска службы сразу после установки может выскочить ошибка. Нужно просто запустить Apache вручную. Для этого открываем службы Windows командой:
services.msc
* другие варианты открыть службы Windows.
Находим сервис с названием Apache и запускаем его:
Открываем браузер и переходим по адресу http://localhost — мы должны увидеть страницу приветствия Apache.
Установка завершена, и мы можем переходить к публикации.
Публикация базы 1С
Мы можем опубликовать базу с помощью графической оболочки или утилиты webinst из командной строки. Мы рассмотрим оба варианта.
Также нужно отметить, что веб-сервер и сервер 1С могут быть на разных компьютерах.
Графический интерфейс
Запускаем 1С и выполняем вход в базу в режиме конфигуратора.
Переходим в пункты меню Администрирование — Публикация на веб-сервере:
В открывшемся окне вводим имя для базы, выбираем веб-сервер Apache и указываем каталог, куда будут помещены конфигурационные файлы для публикации базы:
* имя базы и путь могут быть любыми, но желательно, чтобы они были такими же, как имя самой базы.
Нажимаем кнопку Опубликовать — мы должны увидеть результат выполнения команды:
* если мы получим ошибку Веб серверы не обнаружены, необходимо убедиться, что служба Apache находится в состоянии «Работает».
Система нам предложит перезапустить веб-сервер, чтобы изменения вступили в силу. Однако, с веб-сервером Apache это не всегда работает корректно, поэтому просто отказываемся от перезапуска:
… и идем в службы Windows:
services.msc
Находим службу Apache, кликаем по ней правой кнопкой мыши и выбираем Перезапустить:
Готово.
Командная строка
В командной строке, запущенной от администратора, переходим в каталог с программой 1С, например:
cd C:Program Files1cv88.3.18.1208bin
* обратите внимание, что в вашем случае версия будет другой. Необходимо посмотреть правильный путь и ввести его.
После вводим команду:
а) файловый вариант:
webinst –publish -apache24 -wsdir Base -dir «c:apachehtdocsBase» -connstr «File=»»D:BasesBase»»;» -confpath «C:Apache24confhttpd.conf
б) сервер 1С:
webinst –publish -apache24 -wsdir Base -dir «c:apachehtdocsBase» -connstr «Srvr=192.168.0.10;Ref=Base;» -confpath «C:Apache24confhttpd.conf
* где:
- apache24 — версия нашего веб сервера и тип самого сервера.
- wsdir — имя публикации для базы.
- dir — каталог для хранения файлов публикации.
- connstr — путь до базы. В случае хранения базы в файле пишем путь до нее. Если используется сервер 1С, то пишем его адрес и имя базы.
- confpath — путь до конфигурационного файла Apache.
Мы должны увидеть:
Publication successful
Перезапускаем apache:
net stop Apache2.4 && net start Apache2.4
Публикация завершена.
Запуск
После публикации открываем браузер и заходим на страницу http://localhost/Base, где Base — имя, которое мы задавали при выполнении публикации. Мы должны увидеть окно загрузки 1С и предложение ввести логин и пароль.
Чтобы открывать базу с других компьютеров, необходимо использовать адрес вида http://<IP-адрес сервера с публикацией>/<Имя опубликованной базы>.
Несколько баз
Если нам нужно опубликовать несколько баз на одном веб-сервере, то просто повторяем действия:
- Заходим в нужную базу 1С под конфигуратором.
- Переходим в окно публикации базы.
- Вводим данные, необходимые для публикации.
- Перезапускаем Apache.
- Проверяем работу.
Читайте также
Эти инструкции также могут показаться вам интересными:
1. Установка сервера 1С + PostgreSQL на Linux Ubuntu
2. Оптимизация MS SQL Server для 1С:Предприятие
Настройка веб-серверов для работы с «1С:Предприятием»
1. Общая информация
Данная статья описывает механизм настройки веб-серверов для работы с веб-клиентом и Web-сервисами, а также настройка поддержки OpenID-аутентификации. После публикации обращение к опубликованным компонентам будет выполняться следующим образом:
● Обращение к веб-клиенту. Для запуска веб-клиента необходимо использовать адрес, который формируется по следующим правилам: <Имя хоста веб-сервера>/<Имя виртуального каталога>. Если имя виртуального каталога DemoCfg, то для запуска веб-клиента следует набрать следующий URL (для получения доступа с локальной машины): http://localhost/DemoCfg.
● Обращение в Web-сервису. Для получения доступа к Web-сервису необходимо использовать адрес, который формируется следующим образом:
<Имя хоста веб-сервера>/<Имя виртуального каталога>/ws/<Имя Web-сервиса> или <Имя хоста веб-сервера>/<Имя виртуального каталога>/ws/<Адрес Web-сервиса>.
Так, если виртуальный каталог имеет имя DemoWS, имя Web-сервиса в конфигураторе указано как ДемонстрацияРаботыWS, а в качестве адреса указано DemoWorkWS, то обращение к Web-сервису можно выполнять одновременно по двум адресам (для получения доступа с локальной машины):
http://localhost/DemoWS/ws/ДемонстрацияРаботыWS или http://localhost/DemoWS/ws/DemoWorkWS.
Подробнее про Web-сервисы см. здесь.
● Обращение в HTTP-сервису. Для получения доступа к HTTP-сервису необходимо использовать адрес, который формируется следующим образом:
<Имя хоста веб-сервера>/<Имя виртуального каталога>/hs/<путь к ресурсу>.
Подробнее про HTTP-сервисы см. здесь.
● OpenID-аутентификация выполняется системой автоматически.
Веб-серверы семейства Internet Information Services (далее IIS) поставляются вместе с операционной системой, и для упрощения понимания, какой веб-сервер вы используете, приведем таблицу соответствия версии веб-сервера и операционной системы:
Версия IIS Версия операционной системы
IIS 5.1 Windows XP Professional
IIS 6.0 Windows Server 2003 или Windows XP Professional x64 Edition
IIS 7.0 Windows Vista или Windows Server 2008
IIS 7.5 Windows 7 или Windows Server 2008 R2
IIS 8.0 Windows 8 или Windows Server 2012
IIS 8.5 Windows 8.1 или Windows Server 2012 R2
IIS 10.0 Windows 10
Дистрибутив веб-сервера Apache (как для ОС Windows, так и для ОС Linux) можно получить на веб-сайте проекта: http://httpd.apache.org/download.
2. Общие требования
На компьютере, где выполняется публикация, должен быть установлен и настроен поддерживаемый веб-сервер. Для установки веб-сервера Internet Information Services может потребоваться дистрибутив используемой операционной системы. При установке веб-сервера необходимо обязательно установить поддержку ISAPI расширений. Для установки веб-сервера требуются административные привилегии на компьютере, на который будет установлен требуемый веб-сервер. Публикация может выполняться двумя способами:
● С помощью диалога публикации на веб-сервере, если на компьютере с веб-сервером имеется возможность запустить конфигуратор необходимой разрядности.
● С помощью утилиты webinst.( Вызывать утилиту webinst следует из каталога bin 32-разрядной версии «1С:Предприятия»)
Для выполнения публикации на веб-серверах необходимы административные привилегии на компьютере, где выполняется публикация:
● Для ОС Windows Vista и старше, чтобы выполнить публикацию, следует запускать конфигуратор с помощью пункта Запуск от имени администратора контекстного меню приложения или программы запуска. Если публикация выполняется с помощью утилиты webinst, то от имени администратора должна быть запущена или сама утилита, или интерпретатор командной строки Windows.
● Для ОС Linux, чтобы выполнить публикацию, следует получить права суперпользователя (пользователь root) с помощью команды su или запускать приложение, которое выполняет публикацию, с помощью команды sudo.
При попытке выполнить публикацию система проверяет наличие необходимых привилегий для выполнения операции. Если привилегий текущего пользователя недостаточно для выполнения публикации, то:
● При публикации из конфигуратора пользователю задается вопрос о необходимости продолжить публикацию. В диалоге указывается причина возникновения (диалога) и присутствуют рекомендации по тому, как получить необходимые привилегии.
● При публикации с помощью утилиты webinst пользователю выдается диагностическое сообщение, но публикация продолжается.
Публикация возможна только в том случае, если «1С:Предприятие» расположено на компьютере с веб-сервером.
Для веб-сервера IIS 7.x и старше не поддерживается публикация в том случае, если свойство Каталог (или параметр dir утилиты webinst) указывает на каталог %SYSTEMDRIVE%Inetpubwwwroot.
ПРИМЕЧАНИЕ. Для работы с конфигурацией через веб-сервер конфигурация не должна быть пустой.
3. Виды публикации
3.1. Общая схема публикации
Общая схема публикации выглядит следующим образом:
● выполняется регистрация модуля обработки запросов (модуля расширения веб-сервера), соответствующего веб-серверу;
● на веб-сервере регистрируется виртуальное приложение;
● создается каталог виртуального приложения, и в нем размещается файл default.vrd и выполняется его настройка;
● для пользователей назначаются права на каталог с файлом базы данных (только для файлового варианта).
Для публикации веб-клиента следует использовать версию «1С:Предприятия», использующуюся для работы с информационной базой, к которой планируется получить доступ с помощью веб-клиента. Если на компьютере установлены две версии, например, 8.3.3.100 и 8.3.3.150 и запущен сервер «1С:Предприятия» версии 8.3.3.150, то для публикации следует использовать конфигуратор или утилиту webinst ровно этой же версии.
При выполнении публикации следует помнить, что разрядность регистрируемого расширения веб-сервера должна совпадать с разрядностью самого веб-сервера.
При публикации на веб-сервере IIS следует помнить, что:
● Публикация всегда выполняется для веб-сайта по умолчанию (Default Web Site);
● Публикация всегда выполняется для пула приложений по умолчанию (DefaultAppPool);
● Для пула приложений, используемого для работы «1С:Предприятия», должна быть отключена поддержка среды .NET. Для этого следует установить свойство пула приложений Версии среды .NET Framework в значение Без управляемого кода.
Для выполнения публикации из конфигуратора, необходимо воспользоваться диалогом публикации (Администрирование – Публикация на веб- сервере…).
Затем следует выполнить следующие действия:
● Ввести имя виртуального каталога в поле Имя, при этом имя виртуального каталога может состоять только из символов латинского алфавита.
● В поле Веб-сервер указать тип веб-сервера, для которого выполняется публикация.
● В поле Каталог указать физическое местоположение каталога, в котором будут расположены файлы, описывающие виртуальный каталог. При использовании веб-сервера Apache имя каталога должно состоять только из символов латинского алфавита.
● В зависимости от необходимости установить флажки Публиковать тонкий и веб-клиент и Публиковать Web-сервисы.
● Для веб-сервера IIS можно указать необходимость выполнять аутентификацию на веб-сервере средствами ОС.
● При необходимости выбирать Web-сервисы, которые необходимо опубликовать. Колонка Адрес может быть изменена. В данной колонке задается синоним Web-сервиса. Обращение к Web-сервису возможно как по имени, так и по синониму.
● При необходимости – выполнить настройки остальных параметров публикации.
● Нажатие кнопки Опубликовать запускает процесс публикации. Нажатие кнопки Отключить выполняет удаление публикации с выбранного веб-сервера.
После выполнения публикации будет предложено перезапустить веб-сервер в следующих случаях:
● изменилась версия «1С:Предприятия»;
● изменился путь к модулю расширения веб-сервера;
● выполнена новая публикация для веб-сервера Apache;
● выполнено отключение публикации.
При использовании анонимной аутентификации и файловой информационной базы, при выполнении публикации происходит проверка наличия прав доступа на каталог информационной базы у пользователя, от лица которого выполняется анонимный доступ. Если пользователь не обладает необходимыми правами, выдается предупреждение о невозможности работы с этой информационной базой через веб-сервер. Рекомендуется или дать права на каталог с информационной базой, или установить флажок Использовать аутентификацию операционной системы на веб-сервере.
Если публикация из конфигуратора недоступна (например, при использовании 64-разрядной ОС Windows), публикацию можно выполнить с помощью
утилиты командной строки webinst, которая доступна в ОС Windows и Linux в обеих разрядностях. Далее будет подробно описан диалог публикации и
ключи командной строки утилиты webinst.
3.2. Диалог публикации
Диалог публикации служит для создания публикации или подготовки файла-шаблона для публикации с помощью утилиты webinst (с использованием параметра командной строки -descriptor).
Все параметры, которые можно редактировать при создании публикации, размещены на двух закладках. Рассмотрим их подробнее.
3.2.1. Кнопки диалога
Кнопка Опубликовать выполняет публикацию на веб-сервере. При публикации происходит создание каталога на диске и настройка указанного веб-сервера для работы с «1С:Предприятием». Следует помнить, что публикация на веб-сервере IIS всегда выполняется для веб-сайта по умолчанию (Default Web Site) и для пула приложений по умолчанию (DefaultAppPool).
Под ОС Linux выполняются следующие действия:
● Для каталога, в котором расположен файл default.vrd, в качестве группы-владельца устанавливается группа пользователя, от имени которого работает веб-сервер;
● Для файла default.vrd устанавливается доступ по чтению для группы, включающей пользователя, от имени которого работает веб-сервер.
В случае публикации файловой информационной базы, для каталога с файлом информационной базы в качестве группы-владельца устанавливается группа пользователя, от имени которого работает веб-сервер, а также настраивается наследование группы-владельца для обеспечения работы с информационной базой .
Кнопка Отключить выполняет удаление приложения из веб-сервера и каталога публикации, если это необходимо.
Кнопка Сохранить выполняет сохранение параметров, указанных в диалоге публикации на веб-сервере, в файл. При сохранении система запрашивает имя и место расположения файла, в который будет выполнено сохранение. Сохранение будет выполнено в формате файла default.vrd. С помощью этой команды можно создавать файлы шаблонов, которые будут использоваться в качестве параметра -descriptor утилиты webinst. В качестве значений атрибутов ib и base элемента point будут записаны параметры той информационной базы, из которой выполняется сохранение файла.
Кнопка Загрузить позволяет загрузить для редактирования произвольный файл default.vrd. При загрузке игнорируются атрибуты ib и base элемента point загружаемого файла.
Кнопка Закрыть выполняется закрытие диалога.
Кнопка Справка открывает окно со справочной информацией о диалоге публикации.
3.2.2. Закладка «Основные»
3.2.2.1. Общие параметры
На данной закладке можно задать основные параметры публикации.
Имя. Указывает имя публикации. При публикации с помощью утилиты webinst описывается параметром -wsdir. В файле default.vrd соответствует атрибуту base элемента point.
Веб-сервер. Указывает, для какого веб-сервера выполняется публикация. Веб-сервера Apache добавляются в список в том случае, если они обнаружены на компьютере. При публикации с помощью утилиты webinst , используемый веб-сервер указывается одним из параметров iis, apache2, apache22 или apache24. При работе в ОС Linux возможна публикация только для веб-сервера Apache.
В том случае, если система не смогла однозначно определить версию установленного на компьютере веб-сервера Apache (2.2 или 2.4), в списке будут присутствовать обе версии веб-сервера. При этом следует учитывать, что для веб-сервера Apache версии 2.2 и 2.4 различаются изменения, выполняемые в конфигурационном файле веб-сервера. Поэтому неверное указание версии веб-сервера приведет к неработоспособности публикации.
Каталог. Указывает физический каталог на диске, в котором будет находиться файл default.vrd и куда будет отображен виртуальный каталог веб-сервера. Каталог должен существовать. При публикации с помощью утилиты webinst описывается параметром -dir.
Публиковать тонкий и веб-клиент. Отвечает за возможность работы с опубликованной информационной базой с помощью тонкого и веб-клиента. Если флажок установлен, возможна работа с опубликованной информационной базой с помощью тонкого и веб-клиента. В файле default.vrd соответствует атрибуту enable элемента point.
Публиковать стандартный интерфейс OData. Отвечает за возможность получения доступа к стандартному интерфейсу OData прикладного решения. Подробнее механизм стандартного интерфейса OData описан в книге 1С:Предприятие 8.3. “Руководство разработчика”. В файле default.vrd соответствует атрибуту enableStandardOData элемента point.
Публиковать дистрибутив. Определяет возможность получения и установки клиентского приложения в том случае, если не совпадают версии клиентского приложения и сервера. В качестве дистрибутива используется zip-архив, полное имя которого указывается в качестве значения свойства Расположение публикуемого дистрибутива. В файле default.vrd эти свойства соответствуют атрибуту pubdst элемента point. В архиве должен
располагаться дистрибутив клиентского приложения. При установке будут использоваться параметры установки, указанные в файле 1cestart.cfg (аналогично обычной установке клиентского приложения).
Использовать аутентификацию операционной системы. Разрешает системе установить возможность аутентификации ОС на веб-сервере IIS.
Адрес перехода при окончании работы веб-клиента позволяет указать URL, на который будет выполняться переход после окончания работы веб- клиента. В файле default.vrd соответствует элементу exitURL .
3.2.2.2. Закладка Web-сервисы
Публиковать Web-сервисы. Установка данного флажка приведет к тому, что будут опубликованы Web-сервисы, созданные в конфигурации и перечисленные в таблице, расположенной ниже флажка. В файле default.vrd соответствует атрибуту enable элемента ws. Если флажок сброшен, то это эквивалентно отсутствию элементу ws в файле default.vrd или наличие элемента ws с атрибутом enable, установленным в значение true.
Публиковать Web-сервисы по умолчанию. Отвечает за возможность использования в данной информационной базе Web-сервисов, которые опубликованы без явного указания разрешения использования. В файле default.vrd соответствует атрибуту pointEnableCommon элемента ws.
Таблица ниже флажка Публиковать Web-сервисы содержит перечень публикуемых Web-сервисов и позволяет управлять публикацией каждого Web-сервиса. Первая колонка управляет публикацией конкретного Web-сервиса. Если флажок сброшен, то данный Web-сервис будет запрещен к использованию (его нельзя будет вызвать). В файле default.vrd соответствует атрибуту enable элемента point.
Вторая колонка (с именем Имя) содержит имя Web-сервиса, как оно задано при создании. Описание Web-сервисов приведено в книге 1С:Предприятие 8.3. “Руководство разработчика”. В файле default.vrd соответствует атрибуту name элемента point.
Последняя колонка таблицы (с именем Адрес) содержит псевдоним имени публикуемого Web-сервиса. Обращение к Web-сервису возможно как по имени, так и по псевдониму. Псевдоним Web-сервиса можно редактировать в окне публикации. В файле default.vrd соответствует атрибуту alias элемента point.
Web-сервисы, которые расположены в подключенных расширениях, не отображаются в данной таблицы и могут быть опубликованы только редактированием файла default.vrd вручную.
Публиковать Web-сервисы расширений по умолчанию. Отвечает за возможность использования Web-сервисов, которые поставляются в расширениях конфигурации. В файле default.vrd соответствует атрибуту publishExtensionsByDefault элемента ws .
3.2.2.3. Закладка HTTP-сервисы
Закладка HTTP сервисы предназначена для управления возможностью доступа к прикладному решению с помощью HTTP-сервисов.
Публиковать HTTP сервисы по умолчанию. Установка данного флажка приведет к тому, что будут опубликованы HTTP-сервисы, созданные в конфигурации и перечисленные в таблице, расположенной ниже флажка. В файле default.vrd соответствует атрибуту publishByDefault элемента httpServices. Если флажок сброшен, то это эквивалентно отсутствию элементу httpServices в файле default.vrd или наличие элемента httpServices с
атрибутом publishByDefault, установленным в значение false.
Таблица ниже флажка Публиковать HTTP сервисы по умолчанию содержит перечень публикуемых HTTP-сервисов и позволяет управлять публикацией каждого HTTP-сервиса. Первая колонка управляет публикацией конкретного HTTP-сервиса. Если флажок сброшен, то данный HTTP-сервис будет запрещен к использованию (его нельзя будет вызвать). В файле default.vrd соответствует атрибуту enable элемента service.
Вторая колонка (с именем Имя) содержит имя HTTP-сервиса, как оно задано при создании. Описание HTTP-сервисов приведено в книге 1С:Предприятие 8.3. “Руководство разработчика”. В файле default.vrd соответствует атрибуту name элемента service.
HTTP-сервисы, которые расположены в подключенных расширениях, не отображаются в данной таблицы и могут быть опубликованы только редактированием файла default.vrd вручную.
Публиковать HTTP-сервисы расширений по умолчанию. Отвечает за возможность использования HTTP-сервисов, которые поставляются в расширениях конфигурации. В файле default.vrd соответствует атрибуту publishExtensionsByDefault элемента httpServices
3.2.3. Закладка «Прочие»
На данной закладке можно изменить вспомогательные параметры публикации.
Каталог временных файлов. Позволяет указать каталог временных файлов для работы расширения веб-сервера или файлового варианта информационной базы. В файле default.vrd соответствует атрибуту temp элемента point.
Группа Пул соединений. Описывает элемент pool файла default.vrd. Подробнее см. здесь. Также параметры этой группы управляют работой системы отслеживания разрыва соединений.
Группа Отладка. Описывает элемент debug файла default.vrd.
Группа OpenID. Описывает элемент openid файла default.vrd.
Разделение данных. Описывает элемент zones файла default.vrd. Подробнее остановимся на структуре таблицы с разделителями.
В таблицу попадают все независимые разделители, существующие в конфигурации или загруженном файле. Первая колонка (без имени) определяет необходимость создания элемента zone для выбранного разделителя. Следует помнить, что сопоставление элемента выполняется не по имени разделителя, а по его порядковому расположению в списке. Если отключается первый разделитель, то имеет смысл отключить и все остальные, т. к. параметры элемента zones будут применены системой к другим разделителям.
Колонка Имя содержит имя разделителя, как оно задано в свойствах общего реквизита. Флажок в следующей колонке определяет, будет задано значение разделителя в элементе zone или нет. Если флажок установлен, то в качестве значения атрибута value будет использовано значение из колонки Значение.
Флажки в колонках Указание и Безопасное отвечают за атрибуты safe и specify (соответственно) элемента zone файла default.vrd.
Параметр Фоновые задания в файловом варианте описывает возможность использования фоновых заданий в файловом варианте информационной базы (атрибут allowexecutescheduledjobs корневого элемента point).