Публікація баз даних «1С: Підприємства» 8.3 на веб-сервері IIS в Microsoft Windows Server 2008/2012

У даній статті я детально опишу процес організації веб- доступу до баз даних «1С: Підприємство» 8.3 на веб-сервері IIS (Internet Information Server), що входить в поставку Microsoft Windows Server. Для більш старих версій «1С: Підприємство» (8.1 і 8.2) Алгоритм публікації баз даних в цілому аналогічний. Буде розглянуто алгоритм настройки IIS для роботи «1С: Підприємство», а також описаний процес публікації баз даних на веб-сервері як для 32-розрядної, так і для 64-розрядної модуля розширення веб-сервера.

1. Що знадобиться

  1. Комп’ютер відповідає для роботи веб-сервера під керуванням однієї з операційних систем:
  2. Права локального адміністратора на даному комп’ютері.
  3. Дистрибутив для установки компонент «1С: Підприємство». Для настройки 64-розрядної модуля розширення веб-сервера, дистрибутив для установки 64-розрядної сервера «1С: Підприємство». В даному прикладі використовується версія 8.3.4.389. Для більш старих версій «1С: Підприємство» (8.1 і 8.2) Алгоритм публікації баз даних в цілому аналогічний.

2. Встановлення веб-сервера IIS

Встановлюємо веб-сервер Internet Information Server, який за замовчуванням входить в поставку Microsoft Windows Server. При установці обов’язково вибираємо компоненти:

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

Детально про процес розгортання веб-сервера IIS я писав:

  • У Microsoft Windows Server 2012 (R2) – тут. IIS версії 8, після установки повинні побачити сторінку Default Web Site виду:

  • У Microsoft Windows Server 2008 (R2) – тут. IIS версії 7, після установки повинні побачити сторінку Default Web Site виду:

3. Установка компонент «1С: Підприємство»

На цей же сервер, де розгорнуто веб-сервер IIS, встановлюємо «1С: Підприємство» (32-розрядні компоненти) обов’язково вибравши при установці компоненти:

  • 1с Підприємство
  • Модулі розширення веб-сервера

Якщо планується налаштувати 64-розрядний модуль розширення веб-сервера, то необхідно додатково запустити програму установки 64-розрядної сервера з відповідною поставки «1С: Підприємство» і встановити компоненту:

  • Модуль розширення веб-сервера

4. Налаштування операційної системи

Тепер необхідно встановити необхідні права на ключові папки, використовувані при роботі веб-доступу до баз даних «1С: Підприємство». Для каталогу зберігання файлів веб-сайтів, опублікованих на веб-сервері (за замовчуванням C: \ inetpub \ wwwroot \ ) Необхідно дати повні права групі «користувачі»(Users). В принципі, цей крок можна пропустити, але тоді для публікації або зміни публікації бази даних треба буде запускати «1С: Підприємство» від імені адміністратора. Для настройки безпеки даного каталогу, клікаєм по ньому правою кнопкою миші і в контекстному меню вибираємо «властивості»(Properties).

У вікні властивостей, переходимо на вкладку «Безпека»(Security) і натискаємо кнопку«змінити»(Edit …), для зміни діючих дозволів. З’явиться вікно дозволів для даного каталогу. У списку Груп або користувачів (Groups or user names) виділимо групу «користувачі»(Users) і в списку дозволів для обраної групи встановимо прапор«Пільний доступ»(Full control). Потім натиснемо «застосувати»(Apply) для запису змін і закриємо всі вікна за допомогою кнопки«ОК».

Далі необхідно дати повні права на каталог з встановленими файлами «1С: Підприємство» (за замовчуванням C: \ Program Files (x86) \ 1cv8 \ для 32-розрядної модуля розширення і C: \ Program Files \ 1cv8 \ для 64-розрядної) групі IIS_IUSRS. Для цього виконуємо аналогічні описаним вище дії, з тією лише різницею, що для того щоб необхідна група з’явилася в списку «Групи або користувачі»(Groups or user names) необхідно натиснути розташовану під списком кнопку«Додати»(Add ..), а у вікні вибору груп або користувачів натиснути«додатково»(Advanced …).

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

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

Ну і нарешті, якщо публікація виконується для файлової бази, необхідно також дати групі IIS_IUSRS повні права на каталог з розташованими файлами даної інформаційної бази.

5. Публікація бази даних на веб-сервері

Переходимо до безпосередньої публікації бази даних на веб-сервері. Для цього запускаємо «1С: Підприємство» в режимі Конфігуратор для тієї бази, яку потрібно опублікувати. Потім в меню вибираємо «адміністрування»-«Публікація на веб-сервері …»

Відкриється вікно налаштування властивостей публікації на веб-сервері. Основні поля необхідні для публікації вже заповнені за замовчуванням:

  • Ім’я віртуального каталогу – ім’я по якому буде відбуватися звернення до база даних на веб-сервері. Може складатися тільки з символів латинського алфавіту.
  • Веб сервер – вибирається зі списку знайдених на поточному комп’ютері веб-серверів. У нашому випадку це Internet Information Services.
  • Каталог – фізичне розташування каталогу, в якому будуть розташовуватися файли віртуального додатки.
  • Відповідними прапорами можна вказати типи клієнтів для публікації, а також вказати можливість публікації Web-сервісів. У розташованій нижче таблиці можна відредагувати список Web-сервісів які будуть опубліковані, а також в стовпці «Адреса»Змінити синонім, за яким буде відбуватися звернення до даного Web-сервісу.
  • Також для веб-сервера IIS є можливість вказати необхідність виконання аутентифікації на веб-сервері засобами ОС, встановивши відповідний прапор.

Вибравши необхідні налаштування публікації натискаємо «Опублікувати».

Якщо публікація пройшла без помилок, побачимо відповідне повідомлення.

Публікація на веб-сервері IIS завжди виконується для веб-сайту за замовчуванням і для пулу зі стандартними програмами. Варто мати на увазі, що при виконанні публікації з конфігуратора буде зареєстрований 32-розрядний модуль розширення веб-сервера, а яка буде використовуватися під пул додатків – DefaultAppPool – без настройки працює тільки з 64-розрядними додатками. Відповідно, подальші дії залежать від розрядності модуля розширення веб-сервера, який планується використовувати. Для 32-розрядної модуля розширення веб-сервера, необхідно дозволити пулу додатків використовувати 32-розрядні додатки, або ж зареєструвати 64-розрядний модуль розширення веб-сервера. Про це піде мова нижче

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

Запустимо Диспетчер служб IIS (Internet Information Services (IIS) Manager). Зробити це можна з Диспетчера серверів (Server Manager) вибравши в меню пункт «Кошти»(Tools) -«Диспетчер служб IIS»(Internet Information Services (IIS) Manager).

Тут, розгорнувши дерево у вікні підключень, побачимо, що для веб-сайту за замовчуванням – Default Web Site – з’явився перетворений в додаток віртуальний каталог з ім’ям, яке ми ставили при публікації бази даних. Для завершення публікації залишилося тільки вирішити 32-розрядні додатки для пулу додатків за замовчуванням. Для цього перейдемо в дереві підключень на вкладку «пули додатків»(Application Pools).

У списку пулів додатків знайдемо пул з ім’ям DefaultAppPool. Кликнемо по ньому правою кнопкою миші і в контекстному меню виберемо пункт «Додаткові параметри»(Advanced Settings).

У вікні параметрів пулу додатки, в групі «загальні»(General) знайдемо пункт«Дозволені 32-розрядні додатки»(Enable 32-Bit Applications) і встановимо значення параметра рівним True. Потім збережемо зміни натиснувши «ОК».

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

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

Запустимо Диспетчер служб IIS (Internet Information Services (IIS) Manager). Зробити це можна з Диспетчера серверів (Server Manager) вибравши в меню пункт «Кошти»(Tools) -«Диспетчер служб IIS»(Internet Information Services (IIS) Manager).

Тут, розгорнувши дерево у вікні підключень, побачимо, що для веб-сайту за замовчуванням – Default Web Site – з’явився перетворений в додаток віртуальний каталог з ім’ям, яким ми задавали при публікації бази даних. Для завершення публікації залишилося тільки вказати даному додатку використовувати 64-розрядний обробник запитів. Для цього відкриємо сторінку настройки зіставлення оброблювачів для даного віртуально каталогу, вибравши пункт «зіставлення оброблювачів»(Handler Mappings) на початковій сторінці додатка.

У таблиці зіставлень оброблювачів знайдемо обробник «1С Web-service Extension». Відкриємо даний обробник, клікнувши 2 рази по відповідному рядку в таблиці.

Відредагуємо обробник, замінивши шлях до виконуваної dll 32-розрядної модуля розширення веб-сервера, яка була обрана в даний момент, на шлях до 64-розрядної версії бібліотеки. В даному прикладі міняємо шлях c «C: \ Program Files (x86) \ 1cv8 \ 8.3.4.389 \ bin \ wsisapi.dll»На«C: \ Program Files \ 1cv8 \ 8.3.4.389 \ bin \ wsisapi.dll»Скориставшись кнопкою вибору. Змінивши шлях натискаємо «ОК»Для збереження змін.

8. Підключення до опублікованої інформаційній базі через веб-браузер

Ну ось ніби і все. Для підключень до щойно опублікованій базі даних, запускаємо Internet Explorer, і в рядку адреси вводимо шлях виду http: // localhost /<Ім’я публікації інформаційної бази>. В даному прикладі це http: // localhost / DemoAccounting /.

До даної інформаційної базі також можна підключитися і з будь-якого комп’ютера в мережі, звернувшись до веб-сервера за його внутрішньому (або якщо прокинуть порт 80, по зовнішньому) IP-адресою.

В цьому випадку, для коректної роботи «1С: Підприємство», ім’я домену, на який йде звернення (або IP-адреса) повинен бути доданий в надійні вузли Internet Explorer, а також для нього повинні бути дозволені спливаючі вікна. Детальніше про налаштування Internet Explorer для роботи веб-клієнта «1С: Підприємство» читайте тут.

9. Підключення до опублікованої інформаційній базі через клієнт «1С: Підприємства»

До опублікованій на веб-сервері інформаційній базі можна підключитися і за допомогою тонкого клієнта “1С: Підприємства». Для підключення відкриємо вікно запуску «1С: Підприємство» і натиснемо кнопку «Додати»Для додавання інформаційної бази.

У вікні додавання інформаційної бази / групи встановимо перемикач в «Додавання в список існуючої інформаційної бази»І натиснемо«далі».

Введемо ім’я бази даних, як вона буде відображатися в списку інформаційних баз (повинно бути унікальним для даного списку), тип розташування виберемо «На веб-сервері»І натиснемо«далі».

Вводимо рядок адреси для підключення до інформаційної бази (без префікса / ru_RU /). Також тут можна вказати параметри проксі-сервера (якщо є) і спосіб аутентифікації на веб-сервері. Вказавши необхідні настройки знову тиснемо «далі».

Вказуємо параметри запуску для інформаційної бази і натискаємо «Готово»Для завершення роботи майстра.

Після чого дана інформаційна база з’явиться в списку баз вікна запуску «1С: Підприємство». Звернемо увагу що режим запуску Конфігуратор недоступний для даного типу підключення. натискаємо «1с Підприємство»Для підключення до інформаційної бази.

10. Файли віртуального каталогу

Розглянемо докладніше структуру файлів, які були створені в процесі публікації. Якщо веб-доступ до опублікованої інформаційній базі з якихось причин не заробив, конфігураційні файли можна відредагувати вручну, для досягнення бажаного результату (конфігураційні файли з даної статті для 64-розрядної модуля розширення веб-сервера можна скачати тут).

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

  • default.vrd
  • web.config

Обидва файли доступні для перегляду і редагування за допомогою будь-якого текстового редактора, наприклад програми «Блокнот» (Notepad). Розглянемо структуру цих файлів докладніше.

10.1. файл default.vrd

У файлі default.vrd описуються опубліковані Web-сервіси (елемент <ws>), А також вказується ім’я віртуального додатки (атрибут base) І рядок підключення до інформаційної бази «1С: Підприємство» (атрибут ib). В даному прикладі для файлової інформаційної бази, рядок підключення буде наступною:

ib = “File =&quot; C: \ 1C_BASE \ DemoAccounting&quot ;; “

Як видно з прикладу, якщо в рядку підключення зустрічаються символи, неприпустимі з точки зору стандарту XML (http://www.w3.org/TR/xml11/), вони повинні бути замінені відповідним чином.

У рядку підключення можна вказати логін і пароль користувача. В цьому випадку, підключення до інформаційної бази буде виконуватися від імені зазначеного користувача. Наприклад, для підключення від імені користувача Продавець, рядок підключення буде наступною:

ib = “File =&quot; C: \ 1C_BASE \ DemoAccounting&quot ;; Usr = Продавець; Pwd = 123; “

Для серверної інформаційної бази рядок підключення матиме вигляд:

ib = “Srvr =&quot; WIN2012&quote ;; Ref =&quote; Accounting&quote ;; “

де WIN2012 – ім’я кластера серверів «1С: Підприємство», а Accounting – ім’я бази даних в кластері.

Детальніше про структуру даного файлу можна почитати в книзі «Керівництво адміністратора» 2-е видання, Додаток 2, глава 3.12.

10.2. файл web.config

файл web.config – це файл, який визначає параметри для ASP.NET web-додатки. У кожному web-додатку повинен бути файл web.config, що знаходиться в його кореневому каталозі. Наш віртуальний каталог не є винятком. У поточному файлі містяться дані про обробнику «1С Web-service Extension», що обробляє запити до даного додатку. Оброблювач налаштований таким чином, що всі запити передаються бібліотеці wsisapi.dll, розташованої в каталозі bin, каталогу з файлами «1С: Підприємство». У разі використання серверних інформаційних баз, версія бібліотеки повинна відповідати версії кластера серверів «1С: Підприємства».

Даний обробник можна знайти (або додати, якщо його немає) в диспетчері служб IIS. Для цього необхідно виділити вкладку з поточним додатком і у вікні властивостей вибрати пункт «зіставлення оброблювачів»(Handler Mappings).

У таблиці зіставлень оброблювачів побачимо наш обробник «1С Web-service Extension». Якщо такого обробника в списку немає, його слід додати вибравши у вікні «дії»(Actions) пункт«Додавання зіставлення сценарію з підстановочних знаками»(Add Wildcard Script Map …).

При додаванні вводимо ім’я обробника і вказуємо шлях до файлу wsisapi.dll. Дані параметри можна змінити і для чинного обробника вибравши пункт «Змінити …»(Edit …) у вікні списку дій.

Необхідно також переконатися, що для обробника варто прапор «виконання»(Execute) у вікні змін дозволів функції. Викликати це вікно можна за допомогою пункту «Зміна дозволів функції …»(Edit Feature Permissions …) у вікні«дії»(Actions).

Ссылка на основную публикацию