Соединить 1с в сеть с помощью apache. Подключение к опубликованной на веб-сервере базе при помощи тонкого клиента. Общая схема публикации

Говорят, в 1С-программировании есть чистые эльфы.

Утонченные разработчики, которые по исчерпывающим ТЗ создают нетленные творения в светлых комнатах с тихой музыкой и приглушенным светом:)

С еженедельными meetup и обсуждением scrum-“куриц” за кофе с капкейком:)

Мы читали про них, но пока не видели.

Работа программиста / внедренца 1С
(и вообще большинства специалистов по 1С)
– это не только программирование

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

Понятно, что с добавлением новых пользователей или расстановкой флажков при настройке прав – все более-менее справляются:)

Но есть и темы, которые явно не стали “массовым знанием”.

Поэтому считаем полезным выпустить дополнительные материалы.

Запуск 1С:Предприятия под веб-клиентом

Cегодняшняя тема – родом из летнего опроса (да, мы читаем ответы:)

Тема “1С и web” продолжает оставаться относительно новой, для многих – terra incognita, с которой еще предстоит разбираться.

Поэтому – забирайте:

Вводная информация по запуску 1С под веб-клиентом

Самый первый, вводный видео-урок.

Особенности веб-клиента

Веб-клиент – одно из клиентских приложений в платформе «1С:Предприятие», причем он существенно отличается от толстого или тонкого клиента.
Рассмотрим особенности и отличительные моменты веб-клиента

Общая схема работы с информационными базами «1С:Предприятие» через веб-браузер

В этом видео рассматривается, как организована работа с информационными базами «1С:Предприятие» при использовании веб-браузера.
Какие веб-серверы можно использовать и какие конфигурации можно запустить под веб-клиентом.

Публикация базы на веб-сервере

В этом видео рассматривается, какие действия с информационной базой нужно произвести, чтобы она была доступна для пользователя через браузер.
Рассказывается, что представляет собой публикация базы на веб-сервере.

Установка веб-сервера IIS на Windows Server 2008. Публикация информационной базы «1С:Предприятие»

Один из веб-серверов, с которым может работать «1С:Предприятие», – это IIS от Microsoft. Он входит в поставку Windows Server.
В этом видео рассказывается, как установить IIS и выполнить на нем публикацию информационной базы под Windows Server 2008.
Подключаемся к опубликованной базе при помощи Internet Explorer.

Настройки публикации в диспетчере служб IIS

В этом видео при помощи Диспетчера служб IIS рассматриваем, что происходит на веб-сервере при публикации базы – какие настройки установлены, и что расположено в каталоге публикации.

Особенности публикации файловых информационных баз

В этом видео рассматриваем, какие ошибки с правами доступа могут возникать при публикации файловых информационных баз.

Подключение к опубликованной на веб-сервере базе при помощи тонкого клиента

В этом видео рассматриваем, как подключиться к информационной базе, опубликованной на веб-сервере, не только при помощи браузера, но и под тонким клиентом.
Такую базу можно добавить в список баз в окне запуска.

Установка веб-сервера IIS на Windows Server 2012 R2. Настройка работы с 32-битным расширением

В этом видео рассматривается процесс установки веб-сервера IIS под ОС Windows Server 2012 R2.
Рассказывается, какие настройки необходимо сделать, чтобы обеспечить работу 32-битного расширения под 64-битную ОС.

Публикация информационной базы на веб-сервере под Windows Server 2012 R2

В этом видео рассказывается, как выполнить публикацию информационной базы под ОС Windows Server 2012 R2, что публикация должна выполняться в конфигураторе от имени администратора.

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

В этом видео рассказывается, как установить 64-битный сервер «1С:Предприятие» и как настроить веб-сервер на работу с этой платформой.

1. Публикация 1С на IIS

1. Иногда у клиента есть потребность в работе пользователей через браузер. Это не всегда верное решение, но это – решение клиента. И в том, что пользователи будут работать через браузер, есть свои минусы и плюсы:

a. Не надо устанавливать на рабочую станцию пользователя платформу 1С:Предприятие

b. При обновлении, платформы – тоже не нужно ничего придумывать в виде дополнительных инструментов для установки обновления (особенно если пользователей много).

c. Но есть и минусы:

i. Скорость работы и стабильность работы в браузере и на платформе 1С:Предприятие – будет различаться, причем не в пользу браузера, особенно на больших данных. Имеется в виду вывод больших данных на просмотр. Например, сформированный отчет в 3-4 тыс. строк - скорость его показа в браузере и на клиенте 1С будет не с сторону браузера.

ii. Удобство работы с некоторыми механизмами. Например, с файлами: диалог выбора файла немного отличается.

iii. Сама работа с файлами. В некоторых случаях потребуется установить расширение работы с файлами.

iv. Не работает Drag-and-drop в браузере, хотя фирма 1С анонсировала этот механизм примерно года полтора назад, но это до сих пор не реализовано.

Это было лирическое отступление. На самом деле статья не о том. Я бы хотел рассказать, как опубликовать информационную базу, клиент-серверную, файловую, особенности настройки 32 и 64-bit операционных систем для корректной работы информационной системы в браузере. И показать, что нет ничего сложного в настройке при обновлении платформы, обновлении информационной базы.

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

В панели управления -> Администрировании, проверяем, если нет раздела «Диспетчер IIS» - значит он не установлен. Как установить - в интернете много материалов на эту тему. Обычно он не установлен на рабочих станциях или домашних компьютерах, использующих версии Windows для десктопных версий, на серверных версиях Windows IIS установлен по умолчанию.

Следующим шагом, который требует 1С публикация на веб-сервере IIS, является проверка - установлен ли компонент платформы 1С «Модуль расширения веб-сервера». Если данный компонент не установлен, его необходимо установить. Вариантов как это сделать несколько. Можно запустить инсталлятор платформы. Можно в панели управления -> «Программы и компоненты» (это в win 7 или 10, в более ранних – «программы и установки») - выбрать в установленных программах соответствующий релиз платформы и выбрать «Изменить». Какой вариант установки использовать, - разницы нет. Нужно, чтобы компонент платформы был установлен.

1. Нужно запустить информационную базу в режиме Конфигуратор

2. Выбрать меню «Администрирование» -> «Публикация на веб-сервере»


Кликнув мышкой на кнопку «Опубликовать», информационная база опубликуется. После опубликования программа выдаст предупреждение, что информационная база опубликована (но нужно перезапустить 1С веб-сервер IIS), появится предложение перезапустить. Можно ответить утвердительно. Либо отказаться и вручную перезапустить. В принципе, на этом публикация сервера 1С IIS заканчивается. Для того чтобы проверить, что мы все верно сделали, запускаем браузер и в адресной строке указываем http://localhost/имя информационной базы. Если компьютер имеет белый (реальный) IP-адрес, то вместо localhost, указываем IP-адрес.

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

2. 1С IIS сервер: обновления и настройки


А теперь рассмотрим несколько ситуаций:

Фирма «1С» периодически обновляет платформу 1С. И вот вышел новый релиз. Вы решили «обновиться». Установили новый релиз платформы, запускаете через браузер информационную базу, а она не запускается. Решение следующее:

Запускаем консоль управления IIS.


· Раскрываем ветку «Localhost»


· Доходим до информационных баз, которые опубликованы.

· Выделяем информационную базу.


· В правой части выбираем «Сопоставление обработчиков», кликаем


Ищем «1СWeb- service Extension», дважды кликаем мышкой и корректируем исполняемый файл. Эту операцию нужно провести со всеми информационными базами, которые опубликованы. После проделанной операции обязательно необходимо перезапустить веб-сервер.

Для этого необходимо в консоли управления выделить имя сервера


И выбрать «Перезапустить»

Если вы используете 64-битную платформу 1С, то в настройках IIS нужно дать разрешение пулу приложений разрешение на использование 64-битных приложений. Для этого нужно запустить Диспетчер служб управления IIS.


Выделить «Пулы приложений», выделить «DefaultAppPool», а в панели действий выбрать «Дополнительные параметры»


В этом окне нужно изменить значение параметра «Разрешены 32-разрядные приложения». Во многих источниках было написано, что этот параметр нужно оставить в положении «Истина». У меня не запустилась информационная база, пока не изменил на «Ложь». Возможно, случайность, но такая же ситуация повторилась и у клиента.

Кирилл Шарков,
разработчик 1С компании «Кодерлайн».

В этой статье будет рассказано, как быстро и просто установить 64-битный веб-сервер Apache 2.4.25, настроить его, и выполнить публикацию веб-сервиса с помощью 1С-Предприятия 8.3.

С версии 1С-Предприятие 8.3.8 мы получили возможность работать с сервером Apache 2.4. Учитывая, что поддержка Apache 2.2 заканчивается в июле 2017, вопрос вполне актуальный.

Перед началом установки убеждаемся в следующем:

Итак, если начальные условия у нас выполнены, то порядок действий будет следующим:

  1. Скачиваем и устанавливаем VC++ 15 Runtime по ссылке . Выбираем файл нужный язык и скачиваем файл «vc_redist.x64.exe». Устанавливаем его.
  2. Скачиваем последний актуальный дистрибутив с сайта Apache Haus , на момент написания статьи это 2.4.25 для версии x64. Дистрибутив содержит все необходимые моды для работы по SSL протоколу (библиотека OpenSSL), что для нас большой плюс.
  3. Распаковываем архив, в нем содержится каталог «Apache24», копируем этот каталог в место, где планируется разместить наш веб-сервер.
  4. Находим файл «Apache24/conf/httpd.conf » и редактируем его.
    1. Если в пункте 3 мы копировали в корневой каталог диска, то этот пункт пропускаем, иначе находим строку «Define SRVROOT "/Apache24" » и указываем там полный путь к папке сервера.
    2. Находим и редактируем строку «ServerAdmin [email protected] ».
    3. Находим и редактируем строку «ServerName localhost:80 ».
    4. Сохраняем файл.
  5. Проверяем список служб Windows на предмет наличия службы веб-публикаций (это наш стандартный IIS). На клиентских версиях Windows она скорее всего отсутствует, а на серверных по умолчанию существует. Проверяем, чтобы эта служба была отключена, иначе при попытке запуска Apache мы получим ошибку «make_sock: could not bind to address 0.0.0.0:80 ».
  6. Запускаем командную строку (cmd ) и переходим в каталог «Apache24/bin ». Выполняем тестовый запуск сервера путем отправки команды: httpd
  7. Если работает служба «Брандмауэр Windows», то мы получим сообщение о сетевой активности и запрос о разрешении работы данного приложения. Разрешаем.
  8. Если при установке и настройке не было ошибок, мы не увидим никаких сообщений, текстовый курсор будет мигать в режиме работы приложения, без возврата к стандартному приглашению командного процессора. В этот момент мы проверяем работоспособность путем ввода в адресной строке браузера адреса: «http://localhost». В результате нам должна отобразиться стандартная страница сборки Apache от «Apache Haus».
  9. Прерываем выполнение сервера путем нажатия CTRL+C и затем выполняем установку в качестве службы путем выполнения команды «httpd -k install ». Проверяем и убеждаемся в появлении новой службы в списке. Первая часть марлезонского балета прошла успешно – сам веб-сервер успешно установлен, настроен и работает.
  10. Для тестирования предлагаю использовать проверочную базу данных 8.3, которую можно скачать по ссылке . Разворачиваем как клиент-серверную, далее заходим в конфигуратор 1С-Предприятия под пользователем «Admin» без пароля и выбираем меню «Администрирование – Публикация на веб-сервисе…». Будет открыт диалог публикации, в котором в поле веб-сервиса в списке выбора доступен Apache 2.4. Выбираем его, отмечаем то, что хотим публиковать, нажимаем кнопку «Опубликовать». От рестарта отказываемся. Ниже пример на проверочной базе (можно скачать DT-файл).

  11. Открываем файл конфигурации «Apache24/conf/httpd.conf », ищем строку «LoadModule _1cws_module "C:/Program Files (x86)/1cv8/8.3.9.2170/bin/wsap24.dll" », меняем ее на «LoadModule _1cws_module "C:/Program Files/1cv8/8.3.9.2170/bin/wsap24.dll" ». Данное действие приходится выполнять потому, что, по умолчанию 1С в конфигураторе всегда проставляет ссылку на 32-битную библиотеку, а нам нужна 64-битная. Так что у нас есть выбор – либо каждый раз после правки публикации править файл, либо воспользоваться отдельным механизмом – утилитой «WebInst». Сохраняем файл конфигурации, делаем рестарт службы «Apache 2.4».
  12. Если все сделано правильно, то мы получаем две работоспособные ссылки:
    • «http://localhost/webtest/ » ссылка служит для входа в базу данных через веб-клиент.
    • «http://localhost/webtest/ws/Test?wsdl » - служит для просмотра содержимого wsdl-ссылки веб-сервиса, имеющегося в данной конфигурации.
  13. Вся процедура в результате занимает не дольше получаса.



Стандартная схема работы с 1С предприятием подразумевает наличие в локальной сети самого быстрого компьютера, на котором собственно и находится файловый вариант базы, а все остальные рабочие станции подключаются к ней и работают по протоколу SMB. Однако что же предпринять, чтобы можно было работать удаленно из любого места? Конечно можно использовать терминальный доступ (это все лицензии и деньги), но технологическая платформа 1С позволяет работать в режиме веб- клиента. Как его настроить и какие веб-сервера поддерживаются, мы рассмотрим далее.

В настоящее время платформа 1С умеет работать с двумя общеизвестными серверами: IIS и Apache. Обязательно при установке платформы необходимо установить компоненту «Модули расширения веб-сервера»

Windows IIS или Apache что выбрать?

По непонятным мне причинам многие администраторы и программисты 1С используют сторонний веб-сервер Apache в среде Windows. Зачем городить огород если есть уже встроенный и отлаженный механизм? Его настройка занимает считанные минуты и называется он IIS (Internet Information Services). Да Apache неплохое и бесплатное решение, однако официальные разработчики перестали выкладывать дистрибутивы для Windows, только под Linux (вот тут пожалуйста- можно использовать). Приходится брать сборки с альтернативных сайтов. Поэтому приступим к публикации 1С IIS на примере Windows 7 x32. (В серверных платформах служба IIS уже установлена по умолчанию)

  • Открываем Панель управления-Программы и компоненты-Включение или отключение компонентов windows

  • Откроется окно в котором вам необходимо будет сразу выбрать пункт Службы IIS (выберутся все пункты по умолчанию для работы службы), затем развернем дерево и в пункте Компоненты разработки приложений выберем еще Расширение ISAPI. Далее жмем ОК.

  • После установки этих компонент переходим в Панель управления-Администрирование. Проверяем, что появился пункт Диспетчер служб IIS.

  • Открываем необходимую информационную базу в режиме конфигуратора и переходим в меню Администрирование-Публикация на веб-сервере. Система сама определит вид веб-сервера(в данном случае Internet Information Services). Необходимо ввести имя базы и каталог (по умолчанию каталог inetpub службы IIS). Можно оставить все параметры как есть или изменить по вашему усмотрению. Далее нажмем опубликовать. появится информационное окно о том, что публикация выполнена и потребует перезапустить веб-сервер 1С.

  • На этом настройка завершена. Открываем любой браузер (официально поддерживаются Mozilla FireFox, Microsoft Explorer, Google Chrome, Opera, Safari ) и вводим http://ip или адресное имя/Имя БД, в нашем случае http://localhost/test_base. В результате откроется привычное нам окно авторизации и собственно сама программа в которой мы можем убедиться,что работаем в режиме веб-клиента.

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

Более надежным и безопасным способом будет установка vpn туннеля (например при помощи openvpn или kerio vpn). И ваш удаленных компьютер окажется в той же локальной сети. Далее также открываем браузер и вводим http://ip /Имя БД.

На этом настройка завершена. Удачной работы!

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

Основные требования

Минимальные системные требования к серверной части архитектуры могут значительно различаться и сильно зависят от:

  1. Задач, решаемых программой;
  2. Интенсивности документооборота;
  3. Количества единовременно подключенных пользователей;
  4. Размера и количества опубликованных и прописанных баз данных.

Однако без двух вещей при публикации 1С на веб-сервере обойтись просто невозможно:

  • Развернутого в системе веб-сервера;
  • Установленного и запущенного модуля расширения, поставляемого фирмой 1С.

Веб-сервер

В качестве этого элемента нашей структуры может выступать как Internet Information Server (IIS), поставляемый в составе операционных систем от фирмы Microsoft, так и Apache сервер. Конечно, есть и платные аналоги этих решений, но про них мы разговор вести не будем.

Дополнительным плюсом продуктов Apache является возможность их запуска из Linux подобных операционных систем.

Мы рассмотрим вариант с IIS, т.к. он не требует поисков и установки продуктов сторонних производителей.

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

Инсталляцию этих модулей можно осуществить, запустив файл поставки платформы. Дойдя до окна, внешний вид которого показан на Рис.1, необходимо активировать установку соответствующего компонента.

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

Определившись с инструментарием, перейдем к настройке.

Установка и запуск Web-сервера

Для того, чтобы запустить IIS на компьютере с установленной Windows, необходимо произвести следующую последовательность действий (на примере Windows 7):


Рис.3

Удостовериться в том, что веб-сервер заработал, можно забив в адресной строке любого браузера строку вида «http://localhost» и получив картинку, как на Рис.4.

Рис.4


Рис.6.

В некоторых случаях (в частности, если работа программы осуществляется в среде 64 разрядной операционной система), после публикации базы на сервере, возможно придется донастраивать работы с библиотеками, используемыми платформой 1С. Это можно выполнить из подменю «Сайты».

Выбрав конкретную, только что опубликованную базу в списке, необходимо активировать утилиту «Сопоставление обработчиков» (Рис.7).
Рис.7

В нашем случае нам понадобится установить соответствие между ISAPI-dll и исполняемым файлом wsisapi.dll, находящимся в папке BIN, установленной версии платформы.

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

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

Настройка прав пользователей

Получив вышеуказанное окно, мы переходим к настройке правил доступа для пользователей.

Нам необходимо разрешить полный доступ пользователю IIS_USERS:

  • К папке «C:\inetpub\wwwroot\Имя публикации», где хранится ресурс;
  • К папке с используемой версией программы, где хранится библиотека wsisapi.dll;
  • К месту, где хранится база.

Выполнив вышеперечисленные действия, мы можем проверить работоспособность нашей публикации, забив в окне браузера строку вида «localhoct/Имя публикации» и обнаружив там форму идентификации пользователя.