gifts2017

Windows Azure. Часть 3. Публикация 1С на веб-сервере IIS 7.5

Опубликовал Андрей Акулов (verter.me) в раздел Администрирование - Системное

В данной статье мы завершим настройку IIS 7.5 для работы с 1С. Опубликуем тестовую базу.

Будут рассмотрены следующие вопросы:
1. Настройка веб-сервера IIS 7.5 для работы с базой 1С
2. Публикация базы 1С на веб-сервере IIS 7.5
3. Подключение с помощью "тонкого клиента" с домашнего/офисного компьютера к базе 1С,  развернутой на виртуальной машине

Этап 1. Настройка веб-сервера IIS 7.5 для работы с базой 1С

 

Этап 1. Шаг 1. Создаем папку, которая будет определять внешний путь к нашей базе

Например, имя папки будет: "1sTestBase"

Путь к виртуальной машине у нас был определен при создании виртуальной машины: http://VM1CTest.cloudapp.net

Следовательно полный путь к нашей базе будет: http://VM1CTest.cloudapp.net/1sTestBase

Папку создаем внутри папки "wwwroot" - сюда по умолчанию смотрит веб-сервер IIS 7.5

 

Этап 1. Шаг 2. Запускаем Server Manager и раскрываем веб-сервер IIS 7.5

Этап 1. Шаг 3. Конвертируем нашу папку в приложение (Application)

Иконка нашей папки, созданной на шаге №1 должна изменится

Этап 1. Шаг 4. Определяем, что все файлы, которые будут находится в нашей папке, должны обрабатываться библиотекой 1С

Жмем два раза левой кнопкой мышки. 

Добавляем скрипт который будет передавать управление библиотеке, поставляемой платформой 1С

Если версия платформы будет в дальнейшем меняться, то надо будет оперативно менять путь к библиотеке, соответствующей версии платформы

Этап 1. Шаг 5. Так как на виртуальной машине работает 64-х разрядная операционная система, а подключаться к базе могут клиенты с 32-х разрядными ОС, то необходимо включить поддержку 32-х разрядных ОС.

Позиционируемся на Application Pools

меняем значение false на True

Этап 1. Шаг 6. Контролируем действительно ли библиотека wsisapi.dll у нас подключена

Этап 1. Шаг 7. Устанавливаем права доступа

Нас будут интересовать 3 папки:

1. C:\Program Files(x86)\1cv8\8.3.2.172\bin (в этой папке находится библиотека wsisapi.dll)

2. C:\inetpub\wwwroot\1sTestBase (это созданная нами папка которая будет использоваться для доступа извне)

3. D:\02_Base\TestAzureBase (это закачанная база данных 1С, к которой нам и нужно получить доступ по тонкому клиенту)

Для всех папок необходимо для пользователя IIS_IUSRS установить доступ "Full control"

Для папки с нашей базой данных для пользователя Users, установить доступ "Modify"

Устанавливаем права для папки bin (C:\Program Files(x86)\1cv8\8.3.2.172\bin)

Устанавливаем права для папки 1sTestBase (C:\inetpub\wwwroot\1sTestBase)

Устанавливаем права для папки TestAzureBase (D:\02_Base\TestAzureBase)

Сначала для IIS_IUSRS

Затем для Users

Этап 2. Публикация базы 1С на веб-сервере IIS 7.5


Этап 2. Шаг 1. Создаем файл default.vrd, который будет указывать, где у нас находится наша база данных

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

Также можете скачать данный файл в данной статье

Обратите внимание, что файл создается в кодировке UTF8

параметр "Base" показывает путь к нашей папке 1sTestBase, которую мы настраивали в IIS 7.5

параметр "Ib", указывает путь, где находится наша база данных (конфигурация 1С) - видно, что база данных находится на другом диске

Таким образом, извне подключение смотрит файл default.vrd, отрабатывает его библиотекой wsisapi.dll и запускает базу по указанному пути в параметре "Ib"

Собственно это и есть публикация конфигурации на веб-сервере IIS 7.5


Этап 3. Подключение с помощью "тонкого клиента" с домашнего/офисного компьютера к базе 1С,  развернутой на виртуальной машине


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

Возможны следующие сценарии:

1. На виртуальной машине установлены программные лицензии 1С

2. Между домашним/офисным компьютером и виртуальной машиной прокинут USB-порт (в этом случае USB-ключи с лицензиями 1С установлены на компьютере, а виртуальная машина видит их путем прокидки USB-порта)

3. Между домашним/офисным компьютером и виртуальной машиной организован VPN-туннель. В этом случае виртуальная машина рассматривается как компьютер в сети и, следовательно, можно указать на каких компьютерах сети находятся USB-ключи с лицензиями 1С

4. USB-ключ с лицензией 1С, установлен на локальном компьютере и, в этом случае, при организации подключения по "тонкому клиенту" будет задействован USB-ключ на локальном компьютере

 

Мы рассмотрим вариант №4, когда USB-ключ установлен на локальном компьютере. Также у Вас на компьютере должна быть установлена клиентская программа 1С "Тонкий клиент", либо включена поддержка подключения по тонкому клиенту при установке платформы 1С. 

Этап 3. Шаг 1. Запускаем 1С и видим окно запуска

Этап 3. Шаг 2. Выбираем вариант создания базы

Этап 3. Шаг 3. Будем тестировать на конфигурации "Библиотека стандартных подсистем"

Именно эта конфигурация была использована для тестирования технологии Windows Azure, но Вы можете использовать и любую другую конфигурацию с поддержкой управляемых форм

Этап 3. Шаг 4. Указываем параметры подключения к нашей базе

Этап 3. Шаг 5. Указываем параметры запуска

Этап 3. Шаг 5. База добавлена. Запускаем

Этап 3. Шаг 6. Все идет по плану. Указываем пользователя.

 

Итак, мы смогли запустить базу 1С, развернутой на технологии Windows Azure.

 

Продолжение следует...


Скачать файлы

Наименование Файл Версия Размер
default.vrd 44
.vrd 0,30Kb
09.05.13
44
.vrd 0,30Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Антон (anton.fly7) 10.05.13 09:01
Я опять же про Apache ))
1 в Конфигураторе нажимаем Опубликовать,
2 Перезапускаем апач,
3 ВСЕ

вот была бы статья-сравнение про плюсы-минусы IIS и Apache...
2. Андрей Акулов (verter.me) 11.05.13 11:51
(1) anton.fly7, Чтобы Запустить Конфигуратор на виртуальной машине, необходимо решить вопрос с лицензиями.
Вы каким образом запустили Конфигуратор на виртуальной машине?

По сравнению IIS и Apache - это не ко мне. Запустил IIS, 1С работает и ладненько. Мне большего пока не требуется.
Но если найдете такую статью - выложьте ссылку.
4. Vladimir K (KroVladS) 13.05.13 09:25
Добрый день.
Хотелось бы увидеть расчёт экономической обоснованности использования Windows Azure для целей размещения 1с.
Без учёта халявы BizSpark и 90 дней на тестирование.
5. aaz2008 (aaz2008) 13.05.13 10:01
Посмотрел статью, есть кой-какие замечания.

1)
Этап 1. Шаг 4.
Если модуль расширения от 1С публикуется впервые на этом сервере, то оснастка дополнительно предложит внести его в глобальный список разрешенных модулей расширения веб-сервера и на это предложение следует согласиться, иначе опять же работать не будет. Этот момент пропущен, а именно после него появится запись, приведенная на Этап 1. Шаг 6.

2)
Этап 1. Шаг 5.

Неверно, разрядность клиентов тут совершенно ни при чем. Если на x64 веб-сервере установлена x32 версия платформы 1С, то чтобы заработал ее модуль расширения, необходимо в пуле приложений выставить эту настройку. Т.е это настройка на стороне веб-сервера, а совсем не клиента.

Опять же, если публикуется x64 модуль расширения веб-сервера, то эту настройку делать НЕ надо, иначе опять же не будет работать. То бишь эта настройка должна точно соответствовать разрядности публикуемого модуля расширения.

И еще раз - клиенты тут вообще ни при чем.

Просьба поправить описание, так как оно может ввести в заблуждение.

3)
Этап 1. Шаг 7.
IIS_IUSRS - это вообще-то группа пользователей. Для первых двух папок достаточно доступа на чтение, full control там не нужен. Несекьюрно. ;)
И зачем настройка доступа для группы users? Это по идее не нужно делать.
6. Андрей Акулов (verter.me) 13.05.13 22:31
(4) KroVladS, Отличная идея, Владимир! В одной из следующих статей, выложу раскладку по экономике
7. Андрей Акулов (verter.me) 13.05.13 22:46
(5) aaz2008, Александр, спасибо за комментарии. Чуть позже я задам несколько уточняющих вопросов.
8. Степан S (Ed111111) 15.05.13 17:58
Точно также как и на windows server. Разницы никакой. Но спасибо за статью - буду теперь значить, что это яблоко не далеко от яблони упало.
9. Степан S (Ed111111) 19.05.13 23:13
А сколько по деньгам выходит публикация 1с веб-сервер на azure? Например у вас.
Что выгоднее свой сервер арендовать или использовать microsoft?
10. Андрей Акулов (verter.me) 20.05.13 00:48
(9) Ed111111, Степан, иногда от меня ускользает смысл Ваших вопросов. Можете чуть точнее формулировать вопрос.
Публикация 1С веб-сервер - бесплатна. Если Вы развернули виртуальную машину, то дальнейшие шаги я прописал. во 2-й и в 3-й частях.

Если по поводу вообще о начале работы с Windows Azure, то для меня это практически бесплатно. Точнее моя компания участвует в программе Microsoft BizSpark. В рамках этой программы мне компенсируются услуги на сумму 6000$ в год. Поэтому, если не превышать этот лимит, то на 3 года использование Windows Azure будет мне бесплатно. По крайней мере, мне этого достаточно на текущем этапе развития моей компании. Плюс есть возможность увеличить данную сумму в 10 раз. Т.е. до 60 000$ (над этим как раз сейчас работаем)

Все остальные варианты: приобретение сервера, аренда сервера, размещение сервера в дата центре, аренда 1С - потеряли для меня актуальность.
Скажу, только что я Уже сэкономил 100 тысяч, которые планировал потратить на приобретение сервера, и 6000 в месяц, которые я стал бы тратить за возможность разместить сервер в датацентре. И плюс экономия на системных администраторах, которых бы я привлек для настройки сервера под мои нужды и дальнейшее сопровождение. Поэтому, по моим прикидкам, в первый год я сыэкономил примерно 200 тысяч. при этом сценарии.
deniseek77; +1 Ответить
11. Vladimir K (KroVladS) 22.05.13 10:38
(6) verter.me,
когда ждать статью?
12. Андрей Акулов (verter.me) 22.05.13 12:40
(11) KroVladS, На следующей неделе. Готовится еще несколько частей.
13. Igor2010 (IgorXml) 23.06.13 22:13
Спасибо! Azure не пользуюсь, но для Windows Server 2008 R2 мне статья помогла. После того как с Апачам напрыгался.
14. Vladimir K (KroVladS) 02.07.13 19:16
(12) verter.me,
если всё таки соберётесь писать, добавьте в расчёт цены облачных-1с-провайдеров.
15. Александр Шерстнюк (alexburn) 03.02.14 23:35
Хорошая статья :) !
deniseek77; +1 Ответить
16. Денис Новиков (deniseek77) 09.02.14 22:19
Очень полезная статья, целы йдень бился. А тут все и разжевоно. Спасибо автору. Скомпоновал, обрисовал, расписал. гуд. Очень помогло выиграть время.
17. Alex Gaiduk (AlexSunS) 12.02.14 07:48
А скйльная база ? строка в врдшном файле как будет выглядеть ?
18. Александр Alex (alexand98) 17.02.14 23:12
Добрый день. Статья очень помогла, все работает. Остался один вопрос, как ограничить доступ извне на iis сервер. Сейчас получается есть общий доступ к 1С, остается только подобрать код к пользователям.
Прикрепленные файлы:
19. Андрей Акулов (verter.me) 18.02.14 01:36
(17) AlexSunS, мануал по развертыванию SQL - баз на Azure скоро появится
строка подключения выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
		xmlns:xs="http://www.w3.org/2001/XMLSchema"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		base="/My_Base"
		ib="Srvr="localhost";Ref="My_Base";">
</point>
...Показать Скрыть
AlexSunS; deniseek77; +2 Ответить 1
20. Андрей Акулов (verter.me) 18.02.14 01:45
(18) alexand98,
можно с помощью Windows Firewall
ограничить вход по 80-му порту конкретными IP-адресами
Прикрепленные файлы:
21. Alex Gaiduk (AlexSunS) 27.02.14 04:35
(19) verter.me, Будем ждать спасибо.
22. Дмитрий Жиляков (Zhilyakovdr) 24.03.14 16:10
23. chum (chum) 24.08.14 11:04
Не получается...
Подскажите, в чём проблема?
24. Алексей Ставрович (stavrovich) 03.10.14 15:54
Уважаемый verter.me, ваша статья оказалась весьма полезна для меня. Однако, закончилась она на самом интересном месте.

Фирма у нас не маленькая - естественно, имеется домен. Вход пользователей в 1С происходит посредством Windows-авторизации, никаких паролей к 1С ни у кого нет. Но при попытке зайти через браузер пользователь получает предложение ввести логин и пароль 1С. Причем, если заходить с сервера, где крутится IIS - все в порядке. В общем, не происходит сквозной авторизации с помощью учетки Windows.

Подскажите, в каком направлении копать, может кто сталкивался с подобной ошибкой?
25. Сергей Гуков (SirYozha) 27.02.15 12:02
(23) chum, тоже столкнулся с данной ошибкой.

С первого раза не установились компоненты CGI, ISAPI Extensions, ISAPI Filters.
Заходим в менеджер сервера, снова нажимаем добавить роль Web-server (IIS) и устанавливаем недостающие компоненты.
После этого, ошибка не возникает.
26. Александр Ширипов (shira84) 19.08.15 20:29
Веб-приложения работают хорошо. Но попробовал подобным образом опубликовать мобильное приложение, при загрузке в мобильную платформу на телефоне выдает ошибку 500 (внутренняя ошибка сервера). Голову сломал не пойму что не так.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа