Публикация сервера хранилища конфигураций «1С:Предприятия» 8.3 на веб-сервере IIS в ОС семейства Windows

Logo_1c_8Раннее я уже писал об установке сервера хранилища конфигураций в системе «1С:Предприятия» 8. В данной статье рассмотрим процесс публикации сервера хранилища конфигураций на веб-сервере IIS для возможности доступа к хранилищам, обслуживаемым сервером, по протоколу http (или https).

 

 

0. Оглавление

  1. Установка сервера хранилища конфигураций «1С:Предприятия» 8
  2. Установка веб-сервера IIS
  3. Установка модулей расширения веб-сервера «1С:Предприятия» 8
  4. Настройка доступа к модулям расширения веб-сервера «1С:Предприятия» 8
  5. Создание конфигурационного файла
  6. Настройка приложения в IIS
  7. Подключение к хранилищу

1. Установка сервера хранилища конфигураций «1С:Предприятия» 8

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

2. Установка веб-сервера IIS

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

  • Общие функции 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)

Подробно про установку веб-сервера IIS в различных операционных системах семейства Windows можно прочитать в статьях:

После установки веб-сервера, на компьютере с запущенным сервером IIS в браузере по адресу http://localhost должна появиться стартовая страница (Default Web Site) веб-сервера соответствующей версии.

Ustanovka_IIS_8_Winsdows_Server_2012_13

3. Установка модулей расширения веб-сервера «1С:Предприятия» 8

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

publikaciya_hranilischa_1c_8_na_iis_15

Подробнее про установку компонент программы 1С:Предприятие 8 можно прочитать в статье:

4. Настройка доступа к модулям расширения веб-сервера «1С:Предприятия» 8

Для того, что бы веб-сервер IIS смог работать с установленным на предыдущем шаге модулем расширения веб-сервера «1С:Предприятия» 8, необходимо дать полные права на каталог с данными компонентами (по умолчанию C:\Program Files (x86)\1cv8\ для «1С:Предприятия» 8.3 и C:\Program Files (x86)\1cv82\ для «1С:Предприятия» 8.2) группе IIS_IUSRS.

Для этого кликаем правой кнопкой мыши по необходимому каталогу и выбираем «Свойства» (Properties) в контекстном меню.

publikaciya_hranilischa_1c_8_na_iis_16

В окне свойств переходим на вкладку «Безопасность» (Security) и нажимаем кнопку «Изменить» (Edit…), для изменения действующих разрешений. Появится окно разрешений для данного каталога. В нем нажимаем расположенную под списком «Группы или пользователи» (Groups or user names) кнопку «Добавить» (Add..), а в окне выбора групп или пользователей нажимаем «Дополнительно» (Advanced…).

publikaciya_bd_na_web_server_IIS_03

Затем нажимаем расположенную справа кнопку «Поиск» (Find Now), после чего выбираем необходимую группу IIS_IUSRS в таблице результатов поиска и нажимаем «ОК».

publikaciya_bd_na_web_server_IIS_04

Группа IIS_IUSRS появится в списке групп или пользователей. Даем ей полные права на на выбранную директорию и нажимаем  «Применить» (Apply) для сохранения изменений.

publikaciya_bd_na_web_server_IIS_05

5. Создание конфигурационного файла

Далее переходим непосредственно к публикации установленного до этого сервера хранилищ конфигураций на поднятый раннее веб-сервер IIS. Начнем с того, что в каталоге хранения сайта Default Web Site веб-сервера (по умолчанию C:\inetpub\wwwroot) создадим каталог с именем будущей публикации, пусть это будет каталог с именем repository.

publikaciya_hranilischa_1c_8_na_iis_01

А затем в данном каталоге создадим файл с расширением .1ccr (пусть, по аналогии с каталогом, это будет файл с именем repository.1ccr) и с содержанием:

<?xml version="1.0" encoding="UTF-8"?>
<storage connectString="tcp://<ИмяСервераХранища>"/>

Где <ИмяСервераХранилища> сетевое имя или IP-адрес компьютера на котором запущен сервер хранилища конфигураций.

publikaciya_hranilischa_1c_8_na_iis_02

6. Настройка приложения в IIS

Теперь, если запустить диспетчер служб IIS (Internet Information Services (IIS) Manager) и раскрыть вкладки «Сайты» (Sites) — «Default Web Site» увидим каталог, который мы создавали на предыдущем шаге. Преобразуем данный виртуальный каталог в приложение. Для этого кликнем по нему правой кнопкой мыши и в контекстном меню выберем пункт «Преобразовать в приложение» (Convert to Application).

publikaciya_hranilischa_1c_8_na_iis_03

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

publikaciya_hranilischa_1c_8_na_iis_04

В открывшемся окне сопоставления обработчиков в меню «Действия» (Actions) справа выбираем пункт «Добавление сопоставления сценария с подстановочными знаками» (Add Wildcard Script Map…).

publikaciya_hranilischa_1c_8_na_iis_05

Откроется окно добавления нового обработчика. В нем указываем путь к модулю расширения веб-сервера «1С:Предприятия», а конкретно к библиотеке wsisapi.dll, которая хранится в каталоге bin, директории, указанной при установки компонент системы «1С:Предприятия» в пункте 3 данной инструкции. Также задаем имя обработчика и нажимаем «ОК».

publikaciya_hranilischa_1c_8_na_iis_06

Добавляем данное расширение ISAPI как разрешенное в список ограничений ISAPI и CGL, нажав «Да» (Yes) в появившемся окне.

publikaciya_hranilischa_1c_8_na_iis_07

После чего, только что добавленный обработчик должен появиться в списке сопоставления обработчиков нашего виртуального приложения. Осталось только добавить разрешение на выполнение данного обработчика. Для этого кликаем по нему правой кнопкой мыши и в контекстном меню выбираем «Изменение разрешений функции…» (Edit Feature Permissions…).

publikaciya_hranilischa_1c_8_na_iis_08

В открывшемся окне разрешений устанавливаем флаг в поле «Выполнение» (Execute) и нажимаем «ОК».

publikaciya_hranilischa_1c_8_na_iis_09

Как я уже писал раннее, сервер хранилища конфигураций это 32-разрядное приложение. Соответственно, необходимо разрешить пулу приложений, который обслуживает данный виртуальный каталог работу с 32-разрядными приложениями. Чтобы просмотреть, какой пул обслуживает конкретный виртуальный каталог, необходимо в дереве подключений кликнуть по нему правой кнопкой мыши, в контекстном меню выбрать «Управление приложением» (Manage Application) — «Дополнительные параметры» (Advanced Settings…).

publikaciya_hranilischa_1c_8_na_iis_10

В появившемся окне параметр «Пул приложений» (Application Pool) и определяет пул приложений, который обслуживает данный виртуальный каталог, в данном случае это DefaultAppPool. В этом же окне можно и изменить, в случае необходимости, данное значение параметра.

publikaciya_hranilischa_1c_8_na_iis_11

Для того, чтобы настроить пул приложений для работы с 32-разрядными приложениями, необходимо отыскать его в окне пулов приложений, доступном на вкладке «Пулы приложений» (Application Pools) в дереве подключений, кликнуть по нему правой кнопкой мыши и в контекстном меню выбрать «Дополнительные параметры…» (Advanced Settings).

publikaciya_hranilischa_1c_8_na_iis_12

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

Необходимо помнить (!), что при этом пул перестанет корректно обрабатывать 64-разрядные приложения. Поэтому, если у вас на веб-сервере есть 64-разрядные приложения, например, опубликованные информационные базы системы «1С:Предприятие» обслуживаемые 64-разрядным модулем расширения веб-сервера, следует создать отдельный пул приложений, разрешить на нем 32-разрядные приложения и установить в качестве пула для текущего виртуального каталога.

Установив необходимые параметры жмем «ОК».

publikaciya_hranilischa_1c_8_na_iis_13

7. Подключение к хранилищу

Ну вот, все компоненты системы «1С:Предприятие» установлены, настройки веб-сервера IIS выполнены и можно переходить непосредственно к работе с хранилищем, обслуживаемым сервером хранилища конфигураций по протоколу http. Для создания хранилища (о создании хранилища можно прочитать в статье «Создание хранилища конфигурации в системе «1С:Предприятия» 8») и подключения информационных баз к хранилищу необходимо использовать адрес вида:

http://<ИмяВебСервера>/<ИмяПриложения>/<Файл .1ccr>/<ИмяХранилища>

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

http://WIN2012R2/repository/repository.1ccr/Accounting

таким:

http://localhost/repository/repository.1ccr/Accounting

или даже таким:

https://tavalik.ru/repository/repository.1ccr/Accounting

publikaciya_hranilischa_1c_8_na_iis_14

Помогла ли Вам данная статья?
Да, спасибо, все получилось.
Немного помогла.
Совсем не помогла.
Не то, что я искал(а).
Смотреть результаты
Запись опубликована в рубрике Хранилище конфигурации с метками , . Добавьте в закладки постоянную ссылку.


26 Responses to Публикация сервера хранилища конфигураций «1С:Предприятия» 8.3 на веб-сервере IIS в ОС семейства Windows

  1. myr4ik07 говорит:

    А примиренства http перед tcp есть при использовании сервера хранилища конфигураций?

    по хттп что то не могу подключиться удаленно, не знаю почему, а вот по тисипи удачно подключаюсь через интернет к серверу хранилища поэтому возник вопрос, стоит ли пробовать настроить еще и хттп доступ

  2. Дмитрий говорит:

    Добрый день!

    Спасибо за статью, всё получилось по этой инструкции. Только вот после обновления платформы 1С начинаются небольшие бубны. Просьба описать правильный процесс изменений в настройках IIS после обновления платформы 1С.

  3. Макс говорит:

    Инструкция — просто супер! Как и все остальные, которыми пользовался на этом сайте. Ни разу не видел настолько понятных и подробных инструкций в Интернете.
    Спасибо Вам, Виталий!

  4. Илья говорит:

    Статья помогла настроить всю кухню — за это большое спасибо!
    Но столкнулся с проблемой, которая не описана здесь:
    У меня при попытке поместить в хранилище объект, размером > 20Mb возникает ошибка:
    «Неклассифицированная ошибка работы с хранилищем конфигурации. по причине: Ошибка сервера 404 — файл или каталог не найден. Запрашиваемый ресурс перемещен, переименован либо временно недоступен.»
    Воспроизводится как для одного объекта, так и если идет попытка поместить несколько, с суммарным размером больше 20Mb.

    Я так понимаю, что в iis есть настройки ограничений на размер аплода, но найти их никак не могу.

    • Виталий Онянов говорит:

      Здравствуйте.
      Мне с подобной проблемой сталкиваться пока не приходилось. Действительно, скорее всего у вас на IIS стоит ограничение на размер передаваемого файла. Поделитесь решением, если удастся обойти данное ограничение.

    • Р говорит:

      Фильтрация запросов — Правила — Изменить параметры — Максим. допустимая длина содержимого

  5. froloid говорит:

    Добрый день!

    Настроил всё по инструкции. При попытке подключения по http выдаёт ошибку 405.0 metjod not allowed logon.

    Подскажите пожалуйста, куда копать?

    • Виталий Онянов говорит:

      Здравствуйте.
      А по tcp подключается успешно?

      • Виктор говорит:

        Добрый день,
        у меня такая же ситуация по tcp подключается без проблем, а вот c http ошибка 405.0 делал все по инструкции. связанно ли это как-то с версией платформы? раньше работал на(x86) теперь решил поставить (x64) и больше не смог законектиться по http.
        Заранее благодарю.

        • Виталий Онянов говорит:

          Здравствуйте. Посмотрите внимательно на эту статью: http://tavalik.ru/nastrojka-veb-dostupa-k-bd-1spredpriyatie-na-iis/

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

  6. Денис говорит:

    ДОбрый день
    Установил два сервера win 2012,
    На первом: AD+CS ; второй включен в этот домен и на нём iis8+1c8.3server
    Зарегистрировал домен, а-зоной пробросил его до своего IP адреса, за которым стоит сервер.
    dst-nat пробросил 80 и 443 порты до IISа, на IIS в брендмауре открыл 80 и 443
    на IIS подключил сайт #ИмяДомена.ru
    На IIS создал Сертификат домена и по нему привязал 443 порт к домену.
    Опубликовал базу «Client» в 1с 8.3 на сервере IIS в каталоге c:\site\1c , в котором опубликован сайт c:\site
    Если у опубликованной 1с «Client» с настройками SSL игнорировать, извне подключиться по https://ИмяДомена.ru/Client то всё нормально, 1с откроется.
    Если у опубликованной 1с «Client» с настройками SSL — Требовать SSL/Требовать, извне подключиться по https://ИмяДомена.ru/Client то выдаёт ошибку: 403 — запрещено. Доступ запрещен.
    Как создать сертификат, который нужно установить на клиенте, что бы работал авторизация по SSL?

    • Аноним говорит:

      Самый простой путь — создать серверный самоподписанный сертификат и его содержимое (сертификата) в конец файла «C:\Program Files (x86)\1cv8\8.3.X.XXXX\bin\cacert.pem» дописать.

  7. Евгений говорит:

    Здравствуйте
    На 6-м шаге в списке есть только «Начальная» страница.
    Это означает, что ошибка где-то на предыдущих шагах или просто надо выбрать «Подключиться к серверу…».
    Заранее извиняюсь за некомпетентность в данном вопросе.

  8. Станислав говорит:

    Здравствуйте! Большое спасибо за инструкцию, все получилось! Только есть проблема, если служба хранилища настроена на порт отличный от стандартного (например прописано -port 1458). Тогда при подключении к хранилищу вылетает ошибка 502. Не сталкивались с таким?

  9. Дамир говорит:

    Здравствуйте!
    Спасибо за инструкцию.

    На данный момент пытаюсь настроить удаленное хранилище через протокол https.
    На клиентской машине, при подключении к хранилищу, выходит сообщение «Удаленный узел не прошел проверку».

    Скорее всего проблема с сертификатами, немного запутался в них. Файл .pem сгенерировал, содержимое копировал в файл ..bin\cacert.pem, но результата не дало.

    Подскажите, что не так ? Где-то читал что имена сервера IIS должны совпадать с именем кем выдан сертификат, не совсем понял и этот момент, но может в этом причина ?

  10. Аноним говорит:

    Добрый день!
    Инструкция отличная, спасибо.
    А ошибка cледующего плана у вас не возникала?

    Неклассифицированная ошибка работы с хранилищем конфигурации.
    по причине:
    Невосстановимая ошибка
    Ошибка при выполнении запроса POST к ресурсу :
    по причине:
    Ошибка HTTP при обращении к серверу: http://ххх.ххх.хх.хх:1742
    Unsupported protocol

    Хранилище развернуто на этом порту, по tcp все функционирует.
    Http пока не удается запустить. Вроде бы все сделано скрупулезно по инструкции.

    • Виталий Онянов говорит:

      Добрый день. Странно, я с такой ошибкой не сталкивался. Может у вас запрещен http на веб-сервере или маршрутизаторе? Default Web Site работает по данной ссылке?

      • Аноним говорит:

        С этим все в порядке, веб-сайт по умолчанию работает.

        В танцев и шаманских плясок помогло что-то из следующего:
        — уменьшил имя (как приложения, так и файла 1ccr) до 6 символов, убрал из имени символ подчеркивания
        — добавил права на каталог ещё для пользователя IUSR

        После заработало.

  11. Александр говорит:

    Добрый день.
    Возможно ли опубликовать на вебсервере 2 хранилища конфигураций разнесенные по разным портам? У меня почему то ломится только по стандпртному

    • Виталий Онянов говорит:

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

  12. Ивелин Дянков говорит:

    Привет, после установки Repository server и подключение через https: возникает ошибка :
    «Unknown error working with the configuration repository.
    , reason:
    HTTP: Internal server error
    Error working with resource
    »
    В чем может бьiть причина ?

Добавить комментарий для Денис Отменить ответ

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