Добавляем mime типы 1с
1. Установка IIS выполняется стандартными средствами. Необходимо установить следующие компоненты:
Web Management Tools:
World Wide Web Services:
Набор достаточных компонент приведен на скриншоте ниже.
Набор достаточных компонент IIS.
2. Если при установке платформы "1С:Предприятие" не были установлены компоненты работы с веб-сервером, их надо установить (через установку платформы):
Элементы платформы "1С:Предприятие", которые должны быть установлены.
Далее от имени администратора зайдите в "Конфигуратор" - "Администрирование" - "Публикация на веб-сервере. ". Укажите имя базы в поле "Имя". (используйте только буквы латинсого алфавита). Выберите пустой каталог (путь к нему также не должен содержать кириллических символов, см. пример ниже). Включите флажок "Публиковать Web-сервисы", в списке веб-сервисов включите флажок у сервиса " rg1CTCService ". Нажмите Опубликовать .
Публикация веб-сервиса "Первой Формы".
В диалоге о перезапуске веб-сервера нажмите Да .
Для корректной установки у пользователя должны быть права администратора на компьютере, с которого производится установка.
3. Укажите права для обработчика веб-сервисов "1С:Предприятие". Права на запуск модулей (Execute) добавляются для группы IIS_IUSRS на папку . 1cv81\BIN\
Права на выполнение для обработчика веб-сервисов "1С:Предприятие".
4. Если база "1С:Предприятие" файловая, добавьте права на изменение (Modify) на папку и подпапки базы для той же группы.
Права на изменение для обработчика веб-сервисов "1С:Предприятие".
5. В консоли IIS щелкните правой кнопкой мыши на строку с созданной папкой. Преобразуйте её в приложение.
Преобразование сервиса в приложение.
6. Добавьте MIME типы для приложения "1С:Предприятие". Сделать это можно для сервера, для сайта или для папки (наследование присутствует).
Добавление типов MIME.
7. Добавьте настройки для обработки файлов "1С:Предприятие". На вкладке Handler Mappings добавьте скрипты (не скрипты со звездочкой) для каждого расширения -"*.1cws" и "*.1crs". Для этого последовательно выберите каждую строку, в которой указано одно из нужных расширений, затем справа в разделе "Actions" нажмите "Add Script Map…".
В открывшемся окне нажмите кнопку Request Restrictions . Во втором открывшемся окне:
a) перейдите на вкладку "Access" и выберите тип доступа "Execute". Имя правила можно задать любое.
Настройка типа доступа Executive.
b) там же перейдите на вкладку "Mapping" и отключите флажок "Invoke handler only if request is mapped to"
Настройка вызова обработчика .
Альтернативой является добавление обработчика из командной строки:
C:\>cscript C:\inetpub\AdminScripts\adsutil.vbs SET /W3SVC/1/ROOT/MyApp/ScriptMaps ".1cws,с:\Program Files\1cv81\Bin\wsisapi.dll,5" ".1crs,
На экране отобразится текст:
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
ScriptMaps: (LIST) ".1cws,с:\Program Files\1cv81\Bin\wsisapi.dll,5" ".1crs,с:\Program Files\1cv81\Bin\wsisapi.dll,5"
Важно указать правильный путь: /W3SVC/1/ROOT/MyApp/ScriptMaps
8 . Для обработчиков укажите дополнительные параметры - выберите действие "Edit Feature Permissions" и в открывшемся окне установите флажки запуска скриптов и приложений, как на скриншоте ниже:
Настройка запуска скриптов и приложений.
9. Проверьте наличие обработчика веб-сервисов "1С:Предприятие" на вкладке ISAPI and CGI Restrictions для сервера.
Проверка наличия обработчика web-сервисов "1С:Предприятие".
a) Если устанавливается 32-разрядный модуль , то для обработчика включите режим Alpplication Pool -> DefaultAppPool -> Enable 32-bit Application -> True .
Настройки для 32-разрядного модуля.
b) Если устанавливается 64-разрядный модуль , то режим Alpplication Pool -> DefaultAppPool -> Enable 32-bit Application -> False.
Необходимо заменить 32-разрядный обработчик, который установлен по умолчанию, на 64-разрядный. Для этого откройте Диспетчер сервера -> Роли -> Веб-сервер(IIS) -> Диспетчер служб(IIS) и выберите приложение, преобразованное из виртуального каталога с именем, заданным при публикации базы. В центральном окне выберите раздел Handler Mappings ("Сопоставление обработчиков) и перейдите в него. Откройте первую строчку 1C Web-service Extension и с помощью кнопок "Изменить" и "Обзор" укажите расположение модуля 64-разрядной версии wsisapi.dll .
Настройки для 64-разрядного модуля.
10. Перейдите по ссылке:
11. Анонимная аутентификация на IIS и доступ к базе
В случае неудачной настройки доступа нужно создать пользователя вручную:
Если используется аутентификация "1С:Предприятие" : создайте пользователя с именем, которое создано на компьютере и введено в IIS. Задайте пароль и поставьте флаг "Аутентификация 1С:Предприятия".
Если используется Windows аутентификация : создайте пользователя с неким именем (лучше не использовать имя, которое создано на компьютере и введено в IIS). Установите флаг "Аутентификация Windows".
Выберите или введите пользователя в формате \\имя_компьютера\имя_пользователя . Флаг "Аутентификация 1С:Предприятия" в этом случае лучше снять.
При переносе базы (1Сv8.1) на новый сервер под управлением w2008 возникла необходимость настройки web-сервисов на IIS 7.0. Подобное сочетание версий продуктов стандартным образом 1С уже не поддерживается, и утилитами 1С его сделать нельзя. Пошаговая инструкция на сайте 1С уже удалена. Пришлось воссоздавать процесс по публикациям в Инете. Аналогично для IIS 7.5 (w7).
1) Установка IIS выполняется стандартными средствами. Набор достаточных компонент приведен на скриншоте.
2) Создаем папку на web сервере. В моем случае MyApp.
3) Публикуем сервис из 1С. Администрирование -> Публикация Web-сервисов.
4) Зададим права для обработчика web-сервисов 1С. Права на запуск (Execute) модулей добавляются для группы IIS_IUSRS на папку . 1cv81\BIN\.
5) Если база файловая, нужно добавить права на изменение (Modify) на папку и подпапки базы для той же группы.
6) В консоли IIS. Кликаем правой кнопкой мыши на строку с созданной нами папкой. Преобразовываем её в приложение.
7) Добавляем MIME типы 1С. Делать это можно для сервера или для сайта, или для папки. Наследование присутствует.
8) Добавляем настройки для обработки файлов 1С. На вкладке Handler Mappings добавляем скрипты (не скрипты со звездочкой) для каждого расширения -"*.1cws" и "*.1crs".
Имена любые. Главное - для каждого расширение отдельное правило! Request Restrictions -> Access -> Script или Execute.
Альтернативой является добавление обработчика из командной строки:
Важно указать правильный путь: /W3SVC/1/ROOT/MyApp/ScriptMaps .
9) Для обработчиков нужно задать дополнительные параметры (Edit Feature Permission). Установить флаги запуска скриптов и приложений.
10) Можно проверить наличие обработчика web-сервисов 1С на вкладке ISAPI and CGI Restrictions для сервера.
Если установка идет в 64 разрядном окружении, то для обработчика нужно включить режим Alpplication Pool -> DefaultAppPool -> Enable 32-bit Application -> True.
Переходим по ссылке.
12) Об анонимной аутентификации на IIS и доступе к базе. Настроить доступ с использованием автоматически создаваемого пользователя IUSR у меня не получилось :(. Зато вручную всё работает.
Создал пользователя на компьютере (сервере) с IIS и задал ему пароль. Ни в какие группы не добавлял.
В консоли IIS. Имя_сервера -> Autentification -> AnonymousAutentification -> Edit -> Set -> User name -> Password -> Confirm password.
Далее два варианта для 1С. Аутентификация 1С. Создаем пользователя с именем, как создали на компьютере и ввели в IIS. Задаем пароль и ставим флаг Аутентификация 1С:Предприятия.
Windows аутентификация. Создаем пользователя с неким именем. Лучше не использовать имя, как создали на компе и ввели в IIS. Ставим флаг Аутентификация Windows. Подбираем или вводим пользователя в формате \\имя_компьютера\имя_пользователя. Флаг Аутентификация 1С:Предприятия в этом случае лучше снять.
Всем спасибо за внимание!
Специальные предложения
Каталог
Форум
Магазин
Видео
Выйти
Главная
Разделы
Все списком
Темы форума
Учет.Налоги.Право
1C7.7
1C8.1
1C8.2
IT
OFF
Комментарии публикаций
Прямой эфир
Новые темы
Поиск по форуму
Пользователи
Правила
Помощь
Подписанные темы
Профиль
Пошаговая инструкция настройки web-сервисов для 1Сv8.1 и IIS 7.5/7.0
Комментарии » Комментарии к публикациям
ВОПРОС ОТКРЫТ
За решение данного вопроса предусмотрено вознаграждение в размере 6 $m
(на решение вопроса деньги выделены от: Gerat2 (7.00)).
Пошаговая инструкция настройки web-сервисов для 1Сv8.1 и IIS 7.5/7.0
1. tsd 09.09.10 8:20
а я с аутентификацией второй день парюсь. Никак не удается заставить чтобы при обращении к 8.2 через веб сервис пароль не запрашивался
+ 1 Ответили: (3)
2. Kipetcoff 09.09.10 13:11
Да, геммороя просто доооофигааааааааа. Спасибо большое за пост, очень полезный. А то вообще не понятно есть ли в мире человек который под IIS 7 настроил веб-сервисы. От себя могу добавить что я подумал что нужно ещё фильтры ISAPI добавить, но это было ошибкой..Ошибка 500)))) Так что без самодеятельности))))
4. tsd 09.09.10 17:35
(3) однако, вчера ближе к ночи глубокой, мысли меня посетили примерно те-же. Сегодня в ночи проверю
5. vladal 04.10.10 16:03
Интересно.
Я как раз хотел web-сервис сделать на W7, "для посмотреть".
6. ChessCat 14.10.10 17:38
народ, подскажите маленький вопрос
я создал на IIS в разделе Web Sites новый сайт, но при нажатии на кнопку browse в этом разделе страница не открывается. Куда копать вообще ? IIS 6.0
Ответили: (7)
7. i_lo 06.11.10 22:15
(6) В IIS команда browse показывает список файлов, которые лежат в папке. И никаких страниц не открывает.
8. AVK_Alex 07.10.11 22:27
- Server 2008 R2 Standard SP1 (IIS 7.5).
- Платформа 1С:Предприятие 8.2 (8.2.14.519).
- Демонстрационная конфигурация "Web-сервисы" (1.0.4.1).
Заметил такую (нехорошую) особенность: при публикации (из конфигуратора) под любой учетной записью, кроме встроенного Администратора, вылазят следующие ошибки:
- Витуальный каталог не преобразуется в приложение;
- В виртуальном каталоге не создается файл web.config;
- Как следствие, не запускается веб-клиент 1С.
При этом пользователь включен в группу Администраторы. Испытано на двух серваках - результат одинаковый :)
Если все это делаю под ВСТРОЕННОЙ учетной записью Администратор - все отрабатывает нормально. Похоже, что это где-то в правах, но куда копать? Кто-нибудь сталкивался с такой проблемой?
Изменено: AVK_Alex - 07.10.11 22:29
Ответили: (9)
9. i_lo 07.10.11 23:57
(8) Похоже на проблему с правами доступа. Если где-то права даны только Администратору, а на группу Администраторы нет, то вышеописанная ситуация более чем возможна. Смотреть внимательно права на папки и в IIS. Если есть сомнения, то в папках смотреть действующие роли для конкретного пользователя.
10. Yurkiss 15.11.11 13:17
У меня почему-то не открываются скриншоты к статье, пробовал в разных браузерах.
Ответили: (11)
12. simpal 27.12.11 14:08
подскажите, где взять демо конфигурацию "Web-сервисы"? только на ИТС?
13. AVK_Alex 06.01.12 17:22
подскажите, где взять демо конфигурацию "Web-сервисы"? только на ИТС?
Если вопрос актуален - давай емайл - помогу, чем могу :)
+ 1
15. Banzai79 13.03.12 12:48
(14) qstar, скинул
16. gn@mik 06.04.12 22:30
Интересная статья, большое спасибо
17. botcc 13.04.12 10:17
Если есть трабла с паролем при доступе к вебсервису пишите в аську 51373404 (недавно парился и решил траблу, объясню вкратце что как и где. писать статью на эту тему мне лень :) )
18. Bezeus 14.06.12 12:54
Отредактируй номера картинок в статье. Кажись, ты маленько напутал
+ 1 Ответили: (19)
19. i_lo 14.06.12 16:46
(18) Поместил картинки по тексту.
20. defender 12.07.12 19:15
Windows аутентификация. Создаем пользователя с неким именем. Лучше не использовать имя, как создали на компе и ввели в IIS. Ставим флаг Аутентификация Windows. Подбираем или вводим пользователя в формате \\имя_компьютера\имя_пользователя. Флаг Аутентификация 1С:Предприятия в этом случае лучше снять.
А можно про win-аутентификацию более подробно? Что-то у меня не получается.
Создаем пользователя с неким именем - где создавать? в 1С или на IIS?
Ответили: (21)
21. i_lo 13.07.12 9:10
(20) defender, Для win-аутентификации пользователя нужно создавать в операционной системе. Если комп в домене, то можно в нем. Потом он прописывается в IIS и 1С. При обращении к web-серверу будет вызван стандартный системный диалог аутентификации пользователя. Насколько мне помнится, даже по kerberos. При запуске 1С будет проверяться, из под какого пользователя запуск происходит. Но двойную аутентификацию (+ 1С) по этому пользователю лучше снять (у меня были осечки).
22. Gerat2 05.04.13 7:23
демо конфигурация Web-сервысы выдает:
23. AVK_Alex 05.04.13 11:08
А попробуйте обновить платформу до актуального релиза
24. i_lo 05.04.13 12:00
(22) Gerat2, ". Различаются версии клиента и сервера (8.2.13.219 - 8.2.17.153). " . Модуль обработчика web-сервиса и сервер 1С имеют разные версии.
Для публикации базы данных «1С:Документооборот» запустите «Конфигуратор» и выберите пункт «Администрирование \ Публикация на веб-сервере».
Выберите имя (англоязычное) базы данных, которое станет именем приложения на веб-сервере IIS. Например, для системы документооборота можно указать название «doc». Далее отметьте флажки публикации веб-сервисов и нажмите «Опубликовать».
Важно. Для корректной публикации рекомендуем выполнять запуск «Конфигуратора» с правами администратора. Для этого можно отметить флажок «Run as administrator» в свойствах пиктограммы «1С:Предприятие 8.3» либо запустить через выбор пункта «Run as administrator» в контекстном меню, либо запустить «1С» из командной строки, ранее запущенной с правами администратора.
После публикации проверьте в папке C:\inetpub\wwwroot\doc наличие двух файлов default.vrd и web.config
4. Настройка приложения IIS
После публикации базы данных из «Конфигуратора» необходимо запустить средство администрирования веб-сервера «Internet Information Server Manager». Запустить его можно, например из «Server Manager» в разделе «IIS», далее на нужном веб-сервере правой кнопкой мыши и «Internet Information Server (IIS) Manager»
Теперь необходимо разрешить работу веб-сервера с 32-битными приложениями и библиотеками. Для этого идем в раздел «Application Pools» и для «DefaultAppPool» в «Advanced settings» включаем «Enable 32-Bit Applications»
Для работы веб-сервера IIS с «1С:Предприятие 8» необходимо, что бы был указан корректный путь к библиотеке wsisapi.dll нужной версии платформы «1С».
В разделе Handler Mappinigs проверяем наличие корректного пути к C:\Program Files (x86)\1cv8\8.3.8.1652\bin\wsisapi.dll
Важно. Путь должен быть указан до корректной версии «1С:Предприятие 8». При обновлении платформы необходимо также проверять и корректировать значение пути к библиотеке wsisapi.dll
Для обработки запросов к базе данных и веб-сервисам необходимо в нашем приложении «doc» создать записи в разделе «Handler Mappinigs». Для этого выбираем пункт «Handler Mappinigs» в нашем приложении и нажимаем кнопку «Add Script Map»
Создадим вторую запись для веб-сервисов базы данных:
Request path:*.1cws
Executable:C:\Program Files (x86)\1cv8\8.3.8.1652\bin\wsisapi.dll
Назовем её «1C Enterprice cws»
Теперь для каждого созданного скрипта нужно проверить и при необходимости установить разрешение на его запуск. Нажимаем правой клавишей мышки на каждом созданном скрипте
и в разделе «Edit feature permissions» проверим флажок «Execute» (он должен быть включен).
В разделе «Authentification» приложения «doc» проверяем, что включен ли анонимный режим. Значение «Anonymous Authentification» должно быть «Enabled»
По умолчанию Windows Server 2012 запрещает доступ к веб-сайтам из интернета, поэтому опубликованная база данных будет доступна только из внутренней интрасети. Для доступа из внешней сети Интернет необходимо создать в файерволе правило, позволяющее такой доступ. Для этого откройте «» и создайте правило для 80 порта протокола TCP
Для настройки откройте файл web.config, который располагается в каталоге C:\inetpub\wwwroot\doc и добавьте следующие разделы:
a) В раздел system.webServer добавьте (например, перед закрывающим тегом </system.webServer> следующие строки:
б) В раздел configuration (перед закрывающим тегом <configuration>) добавьте:
После выполнения таких настроек рекомендуем перезапустить веб-сервер IIS. Выполнить перезапуск можно из консоли администрирования веб-сервера нажав в ней кнопку «Refresh».
Воизбежание вопросов следующие вводные: Windows Server 2012 R2 Standard, IIS 8.5, 1С:Предприятие 8.3 (8.3.4.465). Машина - виртуалка на гипервизоре ESXi 5.5. Выделено 2 ядра и 32 гига оперативки. На этом все. Поехали.
- Установка IIS выполняется стандартными средствами. Набор достаточных компонент приведен на скриншоте.
- Создаем папку на web сервере. В моем случае 1С.
Администрирование -> 1С -> Конфигуратор -> Администрирование -> Публикация на Web-сервере.
- Зададим права для обработчика web-сервисов 1С.
Права на запуск (Выполнение) модулей добавляются для группы IIS_IUSRS на папку
C:\Program Files (x86)\1cv8\8.3.4.465\bin .
- Если база файловая, нужно добавить права на изменение ( Изменение ) на папку и подпапки базы для той же группы.
Кликаем правой кнопкой мыши на строку с созданной нами папкой. Преобразовываем её в приложение.
Делать это можно для сервера или для сайта, или для папки. Наследование присутствует.
На вкладке Сопоставление обработчиков добавляем скрипты (не скрипты со звездочкой) для каждого расширения - *.1cws и *.1crs .
Имена любые. Главное - для каждого расширение отдельное правило! Ограничения запроса -> Доступ -> Сценарий или Выполнение.
- Для обработчиков нужно задать дополнительные параметры (Edit Feature Permission). Установить флаги запуска скриптов и приложений.
- Можно проверить наличие обработчика web-сервисов 1С на вкладке ISAPI and CGI Restrictions для сервера.
Так как установка идет в 64 разрядном окружении, то для обработчика нужно включить режим Пулы приложений -> DefaultAppPool -> Дополнительные параметры -> Разрешены 32-разрядные приложения -> True.
- Об анонимной аутентификации на IIS и доступе к базе. Настроить доступ с использованием автоматически создаваемого пользователя IUSR у меня получилось. Важно проверить, что Анонимная проверка подлинности включена как в корне сервера, ТАК И НА САЙТЕ. Иначе не работает.
Собственно на этом все! Теперь все работает!
А теперь сам косяк - после некоторых обновлений, которые проводил “специалист” обслуживающей компании.
Спустя пару дней мы обнаружили, что у нас не работает веб-доступ к одной из конфигураций. Поковырявшись пару минут выяснилось, что при попытке публикации веб-приложения не создается файл конфигурации для веб-сервера - web.config
“Мастера”, которых мы вызывали исправлять ситуевину, предлагали абсолютно всё - от переустановки самого сервера 1С, до попытки перенести сервер 1С на железо, за что собственно и были посланы нахер лесом.
При переносе базы (1Сv8.1) на новый сервер под управлением w2008 возникла необходимость настройки web-сервисов на IIS 7.0. Подобное сочетание версий продуктов стандартным образом 1С уже не поддерживается, и утилитами 1С его сделать нельзя. Пошаговая инструкция на сайте 1С уже удалена. Пришлось воссоздавать процесс по публикациям в Инете. Аналогично для IIS 7.5 (w7).
1) Установка IIS выполняется стандартными средствами. Набор достаточных компонент приведен на скриншоте.
2) Создаем папку на web сервере. В моем случае MyApp.
3) Публикуем сервис из 1С. Администрирование -> Публикация Web-сервисов.
5) Если база файловая, нужно добавить права на изменение (Modify) на папку и подпапки базы для той же группы.
6) В консоли IIS. Кликаем правой кнопкой мыши на строку с созданной нами папкой. Преобразовываем её в приложение.
7) Добавляем MIME типы 1С. Делать это можно для сервера или для сайта, или для папки. Наследование присутствует.
Альтернативой является добавление обработчика из командной строки:
C : \ > cscript C : \ inetpub \ AdminScripts \ adsutil .vbs SET / W3SVC / 1 / ROOT / MyApp / ScriptMaps ".1cws,с:\Program Files\1cv81\Bin\wsisapi.dll,5" ".1crs,с:\Program Files\1cv81\Bin\wsisapi.dll,5" Copyright ( C ) Microsoft Corporation . All rights reserved . ScriptMaps : ( LIST ) ".1cws,с:\Program Files\1cv81\Bin\wsisapi.dll,5" ".1crs,с:\Program Files\1cv81\Bin\wsisapi.dll,5"Важно указать правильный путь: /W3SVC/1/ROOT/MyApp/ScriptMaps .
9) Для обработчиков нужно задать дополнительные параметры (Edit Feature Permission). Установить флаги запуска скриптов и приложений.
10) Можно проверить наличие обработчика web-сервисов 1С на вкладке ISAPI and CGI Restrictions для сервера.
Если установка идет в 64 разрядном окружении, то для обработчика нужно включить режим Alpplication Pool -> DefaultAppPool -> Enable 32-bit Application -> True.
Переходим по ссылке.
12) Об анонимной аутентификации на IIS и доступе к базе. Настроить доступ с использованием автоматически создаваемого пользователя IUSR у меня не получилось :(. Зато вручную всё работает.
Создал пользователя на компьютере (сервере) с IIS и задал ему пароль. Ни в какие группы не добавлял.
В консоли IIS. Имя_сервера -> Autentification -> AnonymousAutentification -> Edit -> Set -> User name -> Password -> Confirm password.
Далее два варианта для 1С. Аутентификация 1С. Создаем пользователя с именем, как создали на компьютере и ввели в IIS. Задаем пароль и ставим флаг Аутентификация 1С:Предприятия.
Windows аутентификация. Создаем пользователя с неким именем. Лучше не использовать имя, как создали на компе и ввели в IIS. Ставим флаг Аутентификация Windows. Подбираем или вводим пользователя в формате \\имя_компьютера\имя_пользователя. Флаг Аутентификация 1С:Предприятия в этом случае лучше снять.
Читайте также: