В своих публикациях мы неоднократно рассказывали о разных аспектах продуктов 1С, однако еще ни разу не затрагивали темы публикации базы данных «1С:Предприятие» на веб-сервере. Речь идет о процедуре, которая позволяет, не устанавливая дополнительные компоненты 1С, получать доступ к базе данных с любого устройства из любой точки земного шара.
В общем виде алгоритм публикации на веб-сервере выглядит следующим образом:
Ниже мы поговорим о том, как установить сервер Apache для работы с платформой 1С: Предприятие в Windows и опубликовать базу данных, а также получить сертификат Let's Encrypt и настроить защищенное соединение.
Одними из самых распространенных программ, с помощью которых создается веб-сервер, считаются Internet Information Server (IIS), входящий в ОС Windows, а также Apache сервер. Речь идет о некоммерческих утилитах, которые, тем не менее, оснащены функционалом, позволяющим настраивать удаленные серверы.
В этой статье мы сосредоточимся на работе с Apache и публикации базы «1С: Предприятие» в Windows. Причина, по которой Apache часто выбирается в качестве альтернативы штатному IIS — кроссплатформенность. Иными словами, опыт настройки веб-сервера на одной платформе легко можно будет экстраполировать на другую, что сэкономит немало времени и ресурсов.
Существует много неофициальных сборок Apache для Windows, отличающихся некоторыми тонкостями настройки. Мы возьмем в качестве примера Apache 2.4.23 x64 от Apache Haus — в этом дистрибутиве для веб-сервера содержатся все исполняемые файлы и конфиги, необходимые для работы Apache.
Скачивание производится с официального сайта. Обратите внимание на то, чтобы разрядность скачиваемой сборки не отличалось от разрядности платформы «1С: Предприятие» (скорее всего речь пойдет о x64). Также после загрузки с помощью контрольных сумм SHA проверьте целостность и подлинность файла.
Когда архив скачан, произведите его распаковку в корневой каталог нужного диска (в нашем примере это будет диск C). Путь к папке с веб-сервером будет выглядеть следующим образом: C:\Apache24.
Залогинившись с правами администратора, выполните команду «C:\Apache24\bin\httpd.exe -k install
», которая запустит установку веб-сервера.
Следующим шагом от вас потребуется настроить в брандмауэре Windows доступ к серверу через порты 80 и 443. Сделать это можно как в графическом интерфейсе, так и в терминале PowerShell, выполнив команду «New-NetFirewallRule -DisplayName "Apache 2.4" -Direction Inbound -Action Allow -EdgeTraversalPolicy Allow -Protocol TCP -LocalPort 80,443
».
Чтобы убедиться, что порты открыты, зайдите в веб-браузер с другого устройства, наберите в адресной строке IP-адрес или домен созданного сервера. Если все сделано правильно, на экране отобразится страница-заглушка Apache.
Чтобы завершить настройку веб-сервера, на котором будут публиковаться базы данных «1С: Предприятия», установите эту платформу и подключите модуль расширения ее веб-сервера. Делается это следующим образом:
Принято выделять два основных способа публикации баз данных: в режиме «Конфигуратор» и с помощью утилиты webinst. Рассмотрим подробнее каждый из них. Отметим, что между публикацией серверной или файловой базы на сервере Apache нет никакой разницы
Этот способ считается более легким, однако требует наличия клиентской лицензии «1С: Предприятие». Приобретя ее в Максиплейс, вы получите в подарок 3 месяца бесплатного использования виртуального сервера. Если вы купите больше лицензий, то мы готовы продлить бесплатный период или предоставить на тот же срок несколько виртуальных серверов. А самым любимым клиентам можем предоставить скидку на продвинутую конфигурацию сервера.
Когда лицензия куплена, можно приступать к публикации. Для этого в режиме «Конфигуратор» загрузите нужную информационную базу и перейдите по пути «Администрирование» => «Публикация на веб-сервере».
В открывшемся окне заполните нужные поля: «сервер» (Apache 2.4), «имя» (виртуальная папка публикации, которая войдет в URL) и «каталог» (месторасположение публикации на физическом сервере; должно быть вложено в папку C:\Apache24\htdocs).
Обратите внимание, что для упрощения публикации, а также из соображений безопасности нужно оставить только галочку «Публиковать доступ для клиентских приложений», а все остальные — отключить.
По завершении публикации потребуется перезагрузить веб-сервер, воспользовавшись возможностями графической оболочки.
Альтернативой конфигуратору выступает webinst — утилита, которая предназначена для настройки веб-серверов с целью поддержки работы веб-клиента и может работать, как с ОС Windows, так и дистрибутивами семейства Linux.
Webinst не нуждается в покупке лицензии и находится в папке bin установленной платформы «1С: Предприятие» (ищется так: win+R, cmd cd C:\Program Files\1cv8\8.3.24.1548\bin).
webinst -publish -apache24 -wsdir hrm-1 -dir "C:\Apache24\htdocs\hrm-1" -connstr "Srvr=SRV-1C;Ref=HRM-1;" -confpath "C:\Apache24\conf\httpd.conf"
».webinst -publish -apache24 -wsdir hrm-2 -dir "C:\Apache24\htdocs\hrm-2" -connstr "File=""C:\1C_Bases\HRM-2"";" -confpath "C:\Apache24\conf\httpd.conf"
» (разница с предыдущим вариантом состоит только в строчке подключения к базе.По завершении публикации потребуется перезагрузить веб-сервер командой «C:\Apache24\bin\httpd.exe -k restart
»
Публикация файловой базы имеет некоторые особенности: при работе через браузер вам понадобится установить на узел с веб-сервером количество клиентских лицензий по количеству сеансов. После завершения сеанса в браузере он продолжает сохраняться на сервере в течение 20 минут на случай повторного подключения, все это время за ним сохраняется выданная лицензия.
Настройка защищенного соединения — важный аспект публикации базы 1С на веб сервере. SSL-сертификаты — это особые криптографические шифры для безопасного соединения сервера и клиента. В одной из предыдущих публикаций мы рассказывали, как настроить сервер «1С-Битрикс» под SSL-сертификат. Углубимся же в эту тему и рассмотрим, как получить сертификат безопасности для Apache с помощью OpenSSL, а также — Let's Encrypt.
OpenSSL — опенсорсная криптографическая библиотека, получившая широкую известность благодаря расширению SSL/TLS, которое используется в веб-протоколе HTTPS.
На официальном сайте нужно принять условия лицензионного соглашения, после чего запустится мастер установки сертификата и предложит выбрать место для размещения дистрибутива. Далее останется лишь произвести установку и решить, планируете ли вы сделать пожертвование проекту.
Следующим шагом откройте терминал, перейдите в директорию исполняемого файла OpenSSL и поочередно выполнить две команды:
cd "C:\Program Files\OpenSSL-Win64\bin"
openssl.exe req -x509 -nodes -days 365 -newkey rsa:2048 -keyout "C:\Program Files (x86)\Apache24\conf\ssl\myserver.key" -out "C:\Program Files (x86)\Apache24\conf\ssl\myserver.crt"
Обратите внимание, что во второй команде «myserver» нужно заменить на реальное имя сервера. Когда команды будут выполнены, в указанной директории появятся сгенерированные сертификаты.
Чтобы протокол HTTP включился на веб-сервере, нужно открыть конфиг «httpd.conf» и раскомментировать строку nclude conf/extra/httpd-ahssl.conf. Далее нужно будет зайти в конфиг httpd-ahssl.conf и прописать в нем путь к сертификату (например, «C:\Apache24\conf\extra\httpd-ahssl.conf»).
Другой способ получить защищенное соединение — заказать популярный сертификат Let's Encrypt, поставляющийся бесплатно. Мы уже подробно писали о нем, поэтому уточним лишь, что он требует регулярного перевыпуска — сейчас срок его действия составляет три месяца.
Важно, чтобы к моменту выпуска у вас был настроен доступ к веб-серверу через 80 или 443 порт (как это сделать в брандмауэре Windows мы уже описали выше). Когда все готово, нужно зайти на официальный сайт, скачать оттуда утилиту для командной строки certBot, после чего от имени администратора выполнить в терминале «certbot certonly –authenticator manual
».
После этого вам будет предложено указать имя домена, для которого будет выпущен сертификат. Далее в корневой папке веб-сервера потребуется создать файл с этим именем, чтобы подтвердить, что владельцем домена являетесь именно вы.
Если все сделано правильно, в каталоге «C:\Certbot\archive» появятся сгенерированные сертификаты, которые теперь можно добавлять в настройки веб-сервера.
Мы рассмотрели процесс установки сервера Apache для работы с платформой «1С: Предприятие» в Windows, описали процесс публикации базы данных и установки SSL-сертификатов.
За более подробной информацией можно обратиться к нашим инженерам, для которых не впервой работать с продуктами 1С: так, одна из наших самых популярных услуг — облачный сервер для «1С-Битрикс», выбрав который, вы получите тщательно оптимизированный, преднастроенный и полностью готовый к работе сервер в облаке MaxiPlace.
Также Максиплейс предоставляет услуги по получению SSL-сертификатов. За счет автоматизации всех процессов, вы можете получить сертификат с проверкой домена в течение 2-х минут.
Статья добавлена 2 месяца назад. Автор - Blog Admin