Добавление web-приложения

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

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

План

К этому моменту серверная часть WT-программы уже должна быть развернута и настроена. Как это сделать, рассматривалось в статье Развертывание проекта в разделах Этап 1 и Этап 2 .

  1. В папке с развернутой серверной частью создать папку \Web, в которой будут храниться бинарники для web-приложения. Например, D:\WorkflowEngine\Template\Web.

  2. Скопировать стандартный конфигурационный файлы appsettings.json из папки config архива в папку D:\WorkflowEngine\Template\Web.

  3. В файл конфигурации D:\WorkflowEngine\Template\Web\appsettings.json внести правки:

    • В поле ServerUrl проверить, совпадает ли указанный адрес с тем, на котором запущена серверная часть WT-приложения. При несовпадении указать верный путь.

    • В поле HostUrl указать адрес и порт, на котором будет запущено web-приложение.

    • В поле XmlFolder проверить, совпадает ли указанный путь до папки WebForms с тем, по которому располагается папка с xml-файлами форм web-приложения. По умолчанию это папка \1. Template\WebForms. При несовпадении указать верный путь.

    • В полях AnonymousUserName и AnonymousPassword прописать WS_GUEST и 123 соответственно. В базе данных в таблице public.user для пользователя WS_GUEST проверить хэш пароля.

  4. Скопировать штатные бинарники из папки bin архива в папку D:\WorkflowEngine\Template\Web.

  5. В папке \Template\Projects\1. Template\Web разархивированного учебного проекта запустить Template.sln и пересобрать решение.

  6. Из папки \1. Template\Web\Template\bin\Debug\net6.0, куда отправляются файлы после сборки решения, скопировать файл Template.dll и добавить в папку D:\WorkflowEngine\Template\Web.

  7. Скопировать файл _start.bat из архива в папку D:\WorkflowEngine\Template\Web.

  8. Для удобства запуска серверной части создать ярлык на файл D:\WorkflowEngine\Template\Web\_start.bat, переименовав его (например, в Template WEB).

Далее подробнее рассмотрим каждый пункт плана.

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

Архив

Скачайте бинарники нужной разрядности:

WorkflowWebForms_x64.zip

WorkflowWebForms_x86.zip

Независимо от разрядности структура папок и файлов будет одинаковая. Основные элементы архивов:

Web-приложение построено на базе .Net Core 6.0, что позволяет сделать его портативным. Поэтому в папке bin лежат все необходимые dll-файлы, чтобы на клиентском сервере не приходилось отдельно устанавливать .NET Core SDK.

В папке config лежит конфигурационный файл appsettings.jsonarrow-up-right, хранящий настройки доступа к web-приложению и адрес серверной части.

Файл _start.bat запускает наше web-приложение.

Разворачивание и настройка

В папке, в которую развернули серверную частьarrow-up-right, например, D:\WorkflowEngine\Template, создадим папку Web, в которой будут храниться бинарники для web-приложения. Например, D:\WorkflowEngine\Template\Web.

Настройка конфига

Скопируем стандартный конфигурационный файлы appsettings.json из папки config архива в папку D:\WorkflowEngine\Template\Web.

В файл конфигурации web-приложения D:\WorkflowEngine\Template\Web\appsettings.json внесем правки:

  • В поле ServerUrl укажем IP-адрес (или доменное имя) и порт серверной части WT-программы, к которой будет обращаться web-приложение. Этот адрес указывали в файле D:\WorkflowEngine\Template\hosting.json в поле server.urls

  • В поле HostUrl укажем IP-адрес (или доменное имя) и порт, на котором будет запущено web-приложения и доступно для вызова в браузере.

  • В поле XmlFolder укажем абсолютный путь до папки WebForms с xml-файлами форм web-приложения. Например, D:\WT\Projects\Template\Projects\1. Template\WebForms.

  • В полях AnonymousUserName и AnonymousPassword пропишем WS_GUEST и 123 соответственно. В базе данных в таблице public.user для пользователя WS_GUEST проверим хэш пароля.

Если необходимо для пользователя WS_GUEST изменить пароль в базе данных, выполним запрос:

Этот же пароль необходимо указать и в файле конфига.

Подготовка бинарников

В новую папку D:\WorkflowEngine\Template\Web скопируем штатные бинарники из папки bin архива.

В папке \Template\Projects\1. Template\Web разархивированного учебного проекта запустим Template.sln и пересоберем решение для сборки исполнительного файла web-приложения на основе razor-страниц.

Из папки \1. Template\Web\Template\bin\Debug\net6.0, куда отправляются файлы после сборки решения, скопируем файл Template.dll и добавить в папку D:\WorkflowEngine\Template\Web развернутой серверной части.

Скопируем файл _start.bat из архива в папку D:\WorkflowEngine\Template\Web. Для удобства запуска серверной части создадим ярлык на файл D:\WorkflowEngine\Template\Web\_start.bat, переименовав его (например, в Template WEB).

Проверим, что запущена серверная часть WT-программыarrow-up-right. При необходимости запустим.

Запустим web-приложение с помощью файла _start.bat:

В браузере обратимся по адресу http://localhost:49708arrow-up-right (при необходимости укажите свой порт) к нашему web-приложению и проверим, что приложение доступно:

Отлично! Web-приложение успешно работает.

Last updated