November 6th, 2008

Настройка Web-сервисов 1С:Предприятия 8 для IIS 7 (vista)

Исходные данные
  1. Платформа 1С:Предприятие 8.2.8.256
  2. Конфигурация 1С:Архив 1.0.2.4 (в файловом режиме)
  3. Vista Business
  4. IIS 7

Установка IIS


Установка 1С


Настройка службы IIS

Добавляем виртуальный каталог (если не создан узел, то его нужно создать, разумеется)


Переходим в созданный каталог и кликаем на "Сопоставление обработчиков"


На панели "Действия" нажимаем на ссылку "Добавить сопоставление сценария..."


В окне добавляем путь к нашему wsisapi.dll

Если будет спрашивать про ограничения, надо ответить что нужно разрешить (если что, это можно поправить в "Ограничения ISAPI и CGI, которая находится в корне консоли)


Теперь добавляем файл defualt.vrd с таким текстом:
+++++++++++++++++++++++++++++++++
<?xml version="1.0" encoding="UTF-8" ?>
<vrs:point
xmlns:vrs="http://v8.1c.ru/8.2/virtual-resource-system"
base="/1C"
ib="FILE=&quot;C:\Users\Mike\Documents\1C\Archive&quot;" />
+++++++++++++++++++++++++++++++++

Естественно в base и в ib у вас будет по другому.
Файл этот должен лежать в физическом пути к виртуальной папке.

Если сейчас попробовать зайти на сервер (в моем случае это http://localhost/1C то получим следующий текст:
+++++++++++++++++++++++++++++++++
Сервис не найден. http://localhost/1C по причине: Файл не обнаружен 'C:\inetpub\wwwroot\1C\service.xml'
An error occurred processing this request.
+++++++++++++++++++++++++++++++++

Я достаточно долго мучался. Что-то ереименовывал и так далее.
А нужно было то всего сделать:

То есть преобразовать виртуальный каталог в приложение.

Теперь что касается доступа. На папку bin я вообще доступ какой-то дополнительный не давал (видимо потому что у меня база на файлах и потому что все это тестировал на одном компьютере).

А вот на базу надо дать, иначе при записи/удалении/изменении не происходит обновления экрана и пишет об ошибке.

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


Как я понял, какой конкретно пользователь должен иметь доступ, настраивается в проверке подлинности пула приложения или самого приложения.


В результате