Стоит задача, поднять встроенный в windows вебсервер IIS и опубликовать на нем базу 1с на платформе 8.3. Ничего сложного в этом нет.

В наличии крутящийся на виртуалке 2008 r2 enterprise server. Права локального администратора к нему. Платформа 1С 8.3.6.2041. Информационную базу создадим пустую. И так приступим. Присоединяйтесь к нашей группе в ВК! Времонте! Умная мастерская!

Установка роли вебсервера(IIS)

Для начало необходимо установить роль вебсервера. Открываем Диспетчер сервера , выбираем слева ветку Роли , справа жмем Добавить роль.

Доходим до шага выбора Роли сервера и ставим галочку напротив Веб-сервер(IIS). Жмем далее. Теперь необходимо верно выбрать службы устанавливаемой роли. Ставим галочки ровно как на скриншоте ниже.

Доводим установку до конца. Мастер добавления ролей должен через определенное время сообщить нам, что роль и все службы роли успешно установились:

Теперь необходимо проверить, все ли хорошо у нас получилось. Открываем любой браузер и переходим в нем по адресу http://localhost . У нас должна отобразиться вот такая вот радостная картинка:


установка платформы и компонентов 1с

Это значит, что вебсервер поднялся у нас корректно и все отлично работает. Поэтому перейдем теперь к 1с. Необходимо поставить платформу. Единственный нюанс при установке платформы выбрать:

  • 1С:Предприятие
  • Модули расширения веб-сервера
настройка прав доступов

Первым делом необходимо настроить права папке, где у нас расположен корневой каталог вебсервера. Если ничего не меняли то по умолчанию он находится C:\inetpub\wwwroot . Переходим в папку C:\inetpub\ выбираем папку wwwroot, щелкаем по ней правой кнопкой мыши и заходим в свойства. Переходим к вкладке Безопасность . Нажатием на кнопку изменить, переходим непосредственно к настройке разрешений. Находим в списке Группы и пользователи , группу Пользователи , и кликнув на нее ставим в графе ниже Разрешения для группы , недостающие галочки в колонке Разрешить .

Теперь необходимо дать права папкам с установленной 1с. Переходим к ним, по умолчанию для 32-битной версии 1с лежит в папке C:\Program Files (x86)\1cv8 для 64-битной в папке C:\Program Files\1cv8 . Также выбираем папку 1cv8 заходим в ее свойства, переходим во вкладку Безопасность -> Изменить. Но вместо выбора группы из списка, нам необходимо ее туда сначала добавить. Для этого жмем кнопку Добавить , в появившемся окне , нажимаем кнопку Дополнительно .


Далее нажимаем по кнопке Поиск и в списке результата ищем IIS_IUSRS , добавляя его двойным кликом, нас возвращает в окно Выбор «Пользователи» или «Группы» но с уже проставленной группой в списке. Жмем Ок, и вернувшись уже к окну Разрешения для группы проставляем все галочки в поле разрешить для вновь добавленной группы.

Проставив разрешения для папок с файлами 1с, нам остается последнее. Дать права группе IIS_IUSRS напапку, где у нас лежит сама база 1с.

Необходимые приготовления сделаны. Теперь переходим непосредственно к публикации.

Публикация 1с на веб сервере

Необходимо запустить 1с в режиме конфигуратора, выбрав нужную для публикации базу. В моем случае это пустая база и она одна.

В режиме конфигуратора 1с, переходим к меню Администрирование -> Публикация на веб-сервере .


Посмотрев на параметры и убедившись, что посути, нас все устраивает, нажимаем Опубликовать . Если публикация у вас прошла без ошибок, перейдем к последнему шагу.

настройка IIS для работы с 32-битным модулем расширения веб-сервера 1С

Напомню вам, что мы использовали 32-битную платформу и модуль расширения веб-сервера от 1с соответственно. Поэтому нам в таком случае еще необходимо разрешить выполнять пулу приложений по умолчанию — DefaultAppPool выполнять 32-битные приложения. Это сделать не сложно. Идем Диспетчер сервера -> Роли -> Веб-сервер(IIS) -> Диспетчер служб(IIS) -> Пулы приложений -> DefaultAppPool. Правой кнопкой мышки по DefaultAppPool вызываем контекстное меню и выбираем в нем Дополнительные параметры.


Ищем строчку Разрешены 32-разрядные приложения и напротив ставим TRUE

НАСТРОЙКА IIS ДЛЯ РАБОТЫ С 64-БИТНЫМ МОДУЛЕМ РАСШИРЕНИЯ ВЕБ-СЕРВЕРА 1С

Если мы использовали 64-разрядную платформу и модуль веб расширения соответственно, то необходимо проделать манипуляции такого рода:

Идем Диспетчер сервера -> Роли -> Веб-сервер(IIS) -> Диспетчер служб(IIS) -> И выбираем приложение преобразованное из виртуального каталога с именем, что мы задавали при публикации базы. В правом поле переходим в раздел Сопоставление обработчиков (Handler Mappings). Публикация 1с 8.3 на веб сервере iis Публикация 1с 8.3 на веб сервере iis

Присоединяйтесь к нашей группе в ВК!

После выхода новых платформ 1С (например, уже в 8.3.11.2867) на 64-х разрядных системах Windows апач версии 2.0, 2.2 работать перестает. Есть выход перейти на 2.4. Его установка несколько сложнее, чем обычная — установочных файлов нет, поэтому все нужно запускать и настраивать вручную. С учетом того, что мне интересно было использовать IIS, решил заодно и статью написать.

  1. Для Windows х64 потребуется дистрибутив 1С х64 (это касается как сервера, так и клиентских приложений)
  2. Установка веб-сервера IIS

Устанавливаем веб-сервер Internet Information Server. При установке обязательно выбираем компоненты:

  • Общие функции HTTP (Common HTTP Features)
    • Статическое содержимое (Static Content)
    • Документ по умолчанию (Default Document)
    • Обзор каталогов (Directory Browsing)
    • Ошибки HTTP (HTTP Errors)
  • Разработка приложений (Application Development)
    • 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)

4. Потом даем права для пользователей IIS_IUSRS и IUSR на папки:

  • папки с установленной платформой;
  • папки с публикациями баз;
  • папки самих баз (в случае файлового варианта).

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

Средства » (Tools) - «Диспетчер служб IIS

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.?.??\bin\wsisapi.dll » на «C:\Program Files\1cv8\8.3.?.???\bin\wsisapi.dll » воспользовавшись кнопкой выбора. Изменив путь нажимаем «ОК » для сохранения изменений.

Для того чтобы в сети Интернет появился сайт, он должен быть размещен на сервере, подключенном к сети и имеющем IP-адрес. Сервер представляет собой компьютер, на котором установлено специальное программное обеспечение, которое в свою очередь также называют веб-сервером. Существует большое количество веб-серверов, и самым популярным из них является Apache.

Apache – полнофункциональный, расширяемый веб-сервер с открытым кодом, удовлетворяющий практически все потребности современных веб-разработок. Apache является кроссплатформенным, т.е. поддерживает множество операционных систем – Microsoft Windows, Linux, BSD, Mac OS, Novell NetWare, BeOS. Основные его функции: поддержка http-протокола, возможность подключения внешних модулей, использование СУБД для проверки подлинности пользователей и обработка файлов конфигурации.



Рис.1 Функции Apache

До того как произойдет настройка Apache для 1С и сама публикация на веб сервере Apache базы 1С, его необходимо скачать. Бинарных сборок для Windows сейчас нет, а значит, скачиваем для примера более раннюю версию – 2.2.25, воспользовавшись поиском.



Рис.2

Запускаем скаченный файл и следуем за установкой.


Рис.3


Рис.4


Рис.5

Далее мы указываем информацию о нашем сервере. Если сервер в локальной сети, а у предприятия нет своего домена, указываем любую информацию, и имя сервера – Localhost, что означает, что сервер будет работать на локальном компьютере. В следующем поле заполняем адрес электронной почты, на который будут приходить ответы сервера (у нас произвольный, для примера).

Выбираем одну из двух настроек: Apache будет запускаться автоматически или вручную, только для текущего пользователя. Оставим рекомендуемые настройки.


Рис.6

Для совместного применения с программой 1С достаточно рекомендуемой установки конфигурации Apache.


Рис.7


Рис.8


Рис.9


Рис.10

После окончания установки сервер начинает работать автоматически. Внизу на панели появится значок программы.


Рис.11

Самый простой способ проверки работы нашего веб-сервера – открыть любой браузер и указать в адресной строке – http://localhost .

В окне у нас должно появиться сообщение «It works!».


Рис.12

(локальный хост) – это компьютер в компьютерных сетях, стандартное, официально зарезервированное доменное имя для частных IP-адресов. Напомним, что при установке Apache мы указали его в поле «Server Name».



Рис.13

Второй способ определения работоспособности нашего веб-сервера – по IP адресу.

Определим IP-адрес нашего ПК в «локалке». Щелкнув в левом углу на значке «Сеть», перейдем в меню «Центр управления сетями и общим доступом».


Рис.14

В открывшемся окне выбираем пункт «Беспроводное сетевое соединение», т.е. нашу сеть, и в появившемся окне нажимаем кнопку «Сведения». Там мы видим IP-адрес нашего компьютера в сети. В нашем случае – 192.168.0.102.



Рис.15

Для проверки работы веб-сервера открываем любой браузер и вводим – htpp://192.168.0.102. Если мы снова видим в окне браузера надпись «It works!», все работает.


Рис.16

При открытии с другого ПК в «локалке» должен быть такой же результат.

Открываем 1С:Предприятие в конфигураторе от администратора и загружаем нужную информационную базу.


Рис.17

В «Администрировании» выбираем необходимую нам функцию.


Рис.18

Если появляется окно:


Рис.19

… необходимо установить модули расширения веб-сервиса.

Для этого зайдем в «Панель управления-Программы и компоненты», найдем «1С:Предприятие» и нажмем «Изменить».


Рис.20

Выбираем «Модули расширения веб-сервиса» и нажимаем «Далее», пока не дойдем до «Готово».



Рис.21



Рис.23

В открывшемся окне указываем имя, выбираем веб-сервер (программа автоматически увидела установленный Apache) и произвольную папку для публикации (имя папки должно быть написано латиницей).

Хоть 1С и не рекомендует использовать веб сервер в файловом режиме (а только в серверном) - тем не меннее для маленьких предприятий с 2-3 бухгалтерами использование веб сервера на новых конфигурациях с "управляемыми формами" (Бухгалтерия 3.0, Зарплата 3.0 и прочее) - позволяет организовать довольно быстрый доступ к базе сетевых компьютеров, даже если они компьютеры эти по сути уже старый хлам. Важно лишь, что бы основной компьютер с базами и веб сервером был приличный (например Core I3, 8 Гбайт оперативки и SSD диск).

Пошаговое руководство по настройке вебсервера 1С на Apache (включая файловый вариант баз данных)

1. Скачиваем установщик Apache

По каким-то причинам все новые версии (например 2.4.25) Apache перестал выкладывать в виде самораспаковывающегося дистрибутива. Для нас вполне приемлемо использовать не самый последний дистрибутив 2.2.25 - позволяющий получить удобный установщик и избежать дополнительных манипуляций.

Обращаю внимание - нам удобно использовать именно *.msi установщик

По рекомендации пользователя (спасибо, Владимир) выкладываю ссылку на Apache версии 2.4 (www.apachelounge.com) . Также с его слов - если качаете х64, то будьте готовы поставить аналогичную х64 1с платформу и в httpd.conf отредактировать строку LoadModule _1cws_module "C:/Program Files/1cv8/8.3.9.2016/bin/wsap24.dll.
Но сам не рекомендую использовать 64-битную 1С, потому как, с высокой степенью вероятности, возникнут гигантские сложности при подключении торгового оборудования, или каких-то других сторонних библиотек.

Выбираем “no ssl” дистрибутив, если базы будут открыты только внутри нашей локальной сети или “ssl” дистрибутив, если база будет открываться в интернете. Дополнительно про настройку ssl можно почитать в статье инфостарт

В нашем примере будем настраивать сервер без ssl для использования только внутри локальной сети.

2. Запускаем скачанный установщик

Заполняем Network Domain: Localhost, Server name: Localhost

Нажимает NEXT, Setup type: Typical NEXT, NEXT, INSTALL

3. Проверяем запустился ли веб сервер

Для этого открываем любой броузер и указываем адрес страницы http://localhost

Мы должны увидеть страничку с надписью It Works !

Выясним IP адрес нашего компьютера в локальной сети. Для этого в нижнем правом углу (рядом с часами) находим иконку локальной сети, кликаем на ней правой кнопкой и открываем "Центр управления сетями и общим доступом"

Выбираем нашу сеть

И нажимаем кнопку "Сведения"

В моем случае адрес компьютера в локальной сети 192.168.0.189

Теперь возвращаемся в броузер и проверяем доступность страницы It Works по IP адресу http://192.168.0.189 (в вашем случае цифры будут отличаться)

Если снова увидели знакомую страницу It Works - все хорошо,

4. Проверяем доступность страницы с других компьютеров и настраиваем брандмауэр

Снова пробуем открыть знакомую нам страницу http://192.168.0.189 (у вас цифры другие) но уже с любого другого компьютера в локальной сети.

Если вместо знакомой страницы вы увидели "Не удается получить доступ к сайту" или аналогичное сообщение - выполним настроку брандмауэра. Для этого возвращаемся на тот компьютер, где установлен Apache, заходим в "Панель управления" - "Система и безопасность" - "Брандмауэр Windows" и в левой части экрана щелкаем на "Дополнительные параметры

Кликаем на раздел "Правила для входящих подключений", затем в правой части окна "Создать правило"

Ставим все три галочки

Указываем произвольное имя, например "Веб сервер 80 порт для 1С". Готово .

Снова идем на другие компьютеры и убеждаемся, что теперь по IP адресу http://192.168.0.189 броузер показывает знакомую нам страницу It Works

5. Публикуем нашу базу на веб сервере.

Открываем конфигуратор нашей базы (Запуск 1С обязательно от имени администратора)

Сегодня оставлю небольшой пост-заметку о настройке 1C 8.3 в части организации доступа через WEB сервер 1С и службы IIS 8.

Раньше я по старинке давал доступ пользователям к 1С средствами сервера терминалов. Тогда у меня на работе стоял Windows 2003 сервер c 1C версии 7, была лицензия сервера терминалов, где был развернут терминальный сервер. Статью по настройке этого добра я тоже когда-то писал, . Все было норм, но вот теперь у нас появилось новое железо (на базе Intel Xeon CPU E3-1220 v3, 8gb ОЗУ), новая 1С (v 8.3), новая операционная система (WIndows Server 2012 r2).

С начала наша бухгалтерия (8 пк) работали по сетевому диску, но в этом случае программа работает по принципу закачки файлов по сети и это ооочень медленно. Решено было найти способ ускорить работу.

Подумал о сервере терминалов, но у меня нет лицензии на сервер терминалов (в интернете не нашел, а покупать сказали дорого). Выход подсказали случайно, оказывается есть в 1C поддержка WEB сервера. Так как опыт с тем же Apache у меня есть и принцип работы я знаю, то решил освоить и WEB сервер 1C.

Установка и проверка всех компонентов

Начнем настройку с установки компонентов 1С Web сервера. Проверим, что у нас установлен модуль-расширение веб-сервера 1С. Если не установлен ставим.

Публикуем базу на веб сервер

Заходим в базу 1С в режиме конфигуратора. Далее идем в меню «Администрирование» - «Публикация на веб-сервере»

Публикуем!

Выставляем права на папки 1C

Следующий шаг, выставить права на следующие папки:

Папка bin в 1С.

Права ставим как на скрине ниже в меню безопасность.

Подключаемся к веб-серверу с компьютеров клиентов

Для этого создаем подключение к БД 1С - Пишем название подключения -> выбираем На веб-сервере -> далее как на картинке ниже:

После этого Вам будет доступно подключение к 1С уже через веб-сервер.

Ошибки с которыми встретился:

1C8.3 IIS «Обнаружено потенциально опасное значение Request.Path», полученное от клиента

После настройки Web сервера 1С столкнулся с проблемой: могу зайти по IP в 1С, логинюсь, но все меню не работали, не мог открыть ни одного окна кроме рабочего стола 1С. Долго парился, пока не нашел решение в инете.

Что нужно сделать:
1. Открываем IIS. Пуск - Выполнить - находим «Диспетчер служб IIS»
2. Открываем наш «сайт»
3. Идем в меню «Сопоставления обработчиков»
4. Ищем ISAPI-dll , и выбираем изменить.
5. Меняем путь запроса с «*.dll» на «*», Исполняемый файл (у Вас может быть другая версия 1С просьба быть внимательней) - «C:\Program Files (x86)\1cv8\8.3.6.2390 \bin\wsisapi.dll».
6. Сохраняем.

7. Проверяем.

На этом пока все. Если есть вопросы, постараюсь помочь.


Close