Комплексное сопровождение
информационной ифраструктуры
компаний

Главная \ FAQ \ Как «подружить» 1С v8.2 и IIS

Как «подружить» 1С v8.2 и IIS

 

Как «подружить» 1С v8.2 и IIS                     

 Вариант №1:

Заинтересовала возможность версии 8.2 (файловый вариант) работать с веб-сервером. Так как на моей машине с Windows XP SP3 уже был настроенный IIS 5.1 по адресу http://localhost/ , то решено было Апача не ставить. Но достаточно внятной документации по настройке IIS почему-то в инете найти не удалось. Бумажной вообще нет. Пришлось разбираться самому, делая по аналогии с настройкой Апача.

Для «опытов» была выбрана самописная конфигурация, находящаяся в папке D:\DataBase\1C\tennis.v82

Каталог БД до первого запуска

Итак, прежде всего создадим в этом каталоге пустой текстовый файл в кодировке UTF-8 или 1252 (кодировка 1251 не проходит, а другие - не проверялись) с именем «default.vrd» и следующим содержимым:

<vrs:point
    xmlns:vrs="http://v8.1c.ru/8.2/virtual-resourse-system"
    base ="/tennis"
    ib ="FILE=&quot;D:\DataBase\1C\tennis.v82\&quot;"/>

Здесь параметр base="/tennis" указывает на то, что к базе мы будем подключаться по адресу http://localhost/tennis.
На этом этапе самый, пожалуй, неприятный «подводный камень» заключается именно в кодировке файла «default.vrd». Поэтому, лучше набирать текст руками, а не копировать через буфер обмена.

Каталог БД перед интеграцией
Теперь приступаем к созданию виртуального каталога на веб-сервере IIS. Запускаем консоль управления сервером и выбираем меню «Создать/Виртуальный каталог»

Оснастка IIS
Указываем псевдоним «tennis» - тот же, что и в параметре «base» файла «default.vrd»:

Мастер создания ВК
Указываем путь к каталогу базы данных 1С:

Мастер создания ВК
Ставим нужные галки и завершаем работу мастера:

Мастер создания ВК
Теперь в консоли управления IIS у нас появилась виртуальная папка «tennis» с характерным значком:

Оснастка с созданным ВК
Отредактируем свойства этого каталога (не всего узла!). Уровень защиты  в принципе можно установить «Низкая (процесс IIS)», но я бы рекомендовал «Средняя (объединенная)». Также, нам необходимо указать IIS, что все файлы в этом каталоге будут обрабатываться 1С:Предприятием. Жмем кнопку «Настройка…»:

Свойства ВК
На закладке «Сопоставления» жмем «Добавить» и указываем путь к 1С-овской библиотеке «wsisapi.dll» (она находится в подкаталоге «\bin» каталога установки 1С:Предприятия):

Окно сопоставления расширений
В качестве обрабатываемых расширений указываем все файлы «.*» (точка-звездочка). Сохраняемся и на всякий случай проверим разрешения по доступу сервиса IIS к каталогу базы данных. Если его там нет, то - добавляем и разрешаем ему изменение файлов и подкаталогов:

Свойства папки БД
Вот, пожалуйи все. На этом процедуру интеграции можно считать законченной и приступить к проверке.

Теперь по поводу браузеров и их настройки. Возможно, эта тема заслуживает отдельного разговора, а здесь ограничимся лишь некоторыми впечатлениями.
Общим для всех является отмена блокировки всплывающих окон и включение JavaScript (если не включено). Итак,

Opera. Не очень дружит с яваскриптом, который генерирует 1С. Иногда по непонятным причинам вместо русских букв показывает знаки вопроса. Плохо форматирует формы. С другой конфигурацией вообще отказалась работать – после прохождения авторизации пользователя 1С разругалась восьмиэтажным яваскриптом и выбросила на пустую страницу.
Safari. Просто интеллигентно молчит… Показывает заголовок «1С:Предприятие», сплэш-скрин восьмерки и … молчит. Культура прежде всего.
Arora. Малоизвестный и немного сыроватый браузер. Не смог показать даже сплэш-скрин, вместо него выдал абракадабру на всю страницу и сообщил «Готово».
Firefox. Работает быстро, но есть недостаток – невозможно копировать через буфер обмена:

Ошибка буфера обмена Firefox
Если кто-то знает в чем может быть причина и как с этим бороться - просьба отписаться в комментариях.
Chrome. То же что и Firefox, может чуть быстрее, и невозможно использовать буфер обмена.
IE. Полностью работоспособен, только притормаживает.

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

Настройка тонкого клиента 1
Далее указываем адрес подключения «http://localhost/tennis/»:

Настройка тонкого клиента 2
Остальные настройки (прокси, аутентификация и т.д.) можно оставить без изменения.
Жмем «Готово» и запускаем 1С:Предприятие (тонкий клиент) :D
Все. Спасибо за внимание.

 

P.S.
Как разрешить вышеописанную проблему с браузером FireFox.
В адресной строке браузера вводим "about:config" (без кавычек), жмём Enter и попадаем в тонкие настройки ОгнеЛиса :)
Здесь меняем значения следующих параметров:

network.standard-url.encode-query-utf8 - для использования нелатинских символов в адресной строке (значение true);
signed.applets.codebase_principal_support - для работы с буфером обмена, внешними компонентами и расширенной работы с файлами (значение true);
dom.popup_allowed_events - для разрешения навигации по окнам приложения с клавиатуры  (добавляем к значению параметра событие keydown).
Быстро найти эти параметры можно используя фильтр: жмём Ctrl+F и вводим в строке фильтра любое слово из названия параметра, например principal. Редактируются двойным кликом, либо правый клик и пункт "Изменить" на соответствующей строке.

Источник: http://kadatskey.at.ua/blog/kak_podruzhit_1s_v82_i_iis/2009-10-29-7

 

Вариант №2:

Настройка веб-клиента 1С:Предприятие 8.2 под Windows 7 x64 и IIS.

 

 

Возникла необходимость отладить небольшую конфигурацию 1С:Предприятие 8.2 под веб-клиентом. Веб сервером был выбран IIS, являющийся самым родным для ОС Windows. Опыт использования этого сервера в Windows XP подсказывал, что с ним будет меньше проблем чем с Apache, но на недавно установленной Windows 7 x64 все оказалось не так просто. Мелкие проблемы начались с момента попытки публикации веб приложения, а после их устранения коснулись уже веб сервера, настройкой которого платформа 1С:Предприятие 8.2 не занимается.

Героически победив все свалившиеся напасти, решил скомпоновать и выложить на всеобщее обозрение свои шаги в достижении цели.

Шаг 1. Доустановка компонентов IIS.

Для работы веб-клиента 1С:Предприятия необходимы службы IIS, которые небыли установлены по умолчанию при установке Windows 7 x64.

Для их установки следует перейти "Пуск - Панель управления - Программы и компоненты - Включение или отключение компонентов Windows". В появившемся дереве, в ветке "Службы IIS – Компоненты разработки приложений" отметить все компоненты, как показано на рисунке. Затем нажать кнопку "Ок".

Шаг 2. Разрешение 32-разрядных приложений в пуле приложений.

Веб-клиент 1С:Предприятия 8.2 является 32-разрядным приложением. Поэтому для 64-разрядной ОС необходимо разрешить работу оных в пуле приложений сервера IIS. Для этого необходимо перейти "Пуск - Панель управления – Администрирование – Диспетчер служб IIS". В диспетчере служб выбрать "Пулы приложений – DefaultAppPool – Дополнительные параметры". В списке дополнительных параметров переменной "Разрешены 32-разрядные приложения" установить значение "True".

 

Шаг 3. Установка удостоверения пула приложений в качестве удостоверения анонимного пользователя.

По умолчанию в качестве анонимного пользователя установлен пользователь IUSR, которого нет в системе. Дабы не создавать оного можно просто включить удостоверение пула приложений в качестве удостоверения анонимного пользователя. Для этого необходимо перейти "Пуск - Панель управления – Администрирование – Диспетчер служб IIS". В диспетчере служб перейти в "Проверка подлинности – Анонимная проверка подлинности". В открывшемся диалоге отметить "Удостоверение пула приложений". Закрыть диалог, нажав кнопку "ОК".



Вроде бы ничего не забыл. Ну а дальше публикуем веб-клиента (в конфигураторе "Администрирование – Публикация на веб-сервере") и наслаждаемся результатом, запустив отладку (в конфигураторе "Отладка – Начало отладки – Веб клиент: начать отладку").

Источник: http://provlax.livejournal.com/543.html

Вариант №3:

Настройка 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 я вообще доступ какой-то дополнительный не давал (видимо потому что у меня база на файлах и потому что все это тестировал на одном компьютере).

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

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


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


В результате

Источник: http://mikepin.livejournal.com/3767.html