Платформу можно ставить на Windows Server 2019+ (например, 1Cloud.ru).
Есть 2 модификации платформы:
Модификации отличаются структурой каталогов.
Для установки на Windows Server минимальные требования (в скобках оптимальные для начала):
Требуемый софт на сервере
Создать базу путем Restore backup из образа чистовой базы blank2, либо из другой базы.
Создать пользователя SQL и дать права на созданную базу данных (схема db_owner).
Скопировать файлы веб-приложения Falcon Space в папку на сервере (например: C:\sites\projectName)
Прописать в файле appsettings.json (или в web.config для MVC версии) подключение к БД (в Connection Strings), имя куки, ключ лицензии(в разделе appSettings), прописанный в лицензионном договоре.
Создать сайт в IIS:
В настройках пула Advanced Settings также указать:
У пула ставим в AdvancedSettings:
Дать права на запись в папку /uploads (для Core - /wwwroot/uploads) для IIS_IUSRS через File Explorer (Мой компьютер).
Проверяем, что все работает - запускаем домен и входим под админом (пароль админа будет получен при передачи бекапа БД).
Примечание: Ваш домен должен указывать на IP адрес сервера. Для этого необходимо прописать DNS зону для домена (2 записи типа A с IP сервера приложения - @ и www). Чтобы уменьшить время обновления установить TTL домена в минимальное значение (3600).
Проверить связку домен - IP можно через команду ping: Win +R > cmd > ping mydomain.ru
Иногда ASP.NET по умолчанию не установлен в IIS. В этом случае идем в Администрирование / Диспетчер серверов (Server manager) / Добавить роль или компонент и ставим ASP.NET в разделе Веб-компонентов. После установки перезагрузить IIS.
Также необходимо, чтобы был установлен на сервере модуль URL Rewrite для IIS (просто ставим и перезагружаем IIS). https://www.iis.net/downloads/microsoft/url-rewrite
Если вы ставите Core версию на Windows сервер, то понадобится модуль .NET Core 3.1 - https://dotnet.microsoft.com/en-us/download/dotnet/3.1 (скачиваем Windows Bundle Hosting версию).
Либо ищем через все версии .NET - https://dotnet.microsoft.com/en-us/download, ссылка "all .net versions", и там .NET Core 3.1
Примечание: для хранения сессий пользователей на диске, необходимо создать папку DataProtectionStorage (дать доступ процессу пула на запись), а также файлы certificate.json и pfx сертификат. Как создать сертификат (Create self signed sertificate)
Получаем версию платформы по FTP (версия Core будет иметь следующий вид 2023-09-28.cr, MVC версия - 2023-09-28)..
Как понять какая у меня версия? Если в корне у вас есть папка wwwroot и файл appsettings, то у вас Core версия. В противном случае - у вас MVC версия.
Распаковываем архивы во временную папку.
Перед обновлением создаем бекап существующего сайта - копируем папку сайта.
Для MVC версии - из архива _mvc....zip просто заменяем содержимое в папке сайта.
Для Core версии:
Примечание: Обновляем все файлы из свежей версии, кроме:
База данных при обновлении ядра платформы не меняется (могут быть только точечные изменения, но они делаются вне процесса обновления ядра платформы).
При переносе с хостинга на сервер возникают нюансы (из-за доп. настроек на хостинге).
Необходимо убрать из web.config следующие настройки:
Если сайт все равно не запускается, то ставим в web.config и смотрим с сервера, какое сообщение ошибки выдается при запуске сайта.
Иногда возникает такая ошибка: This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".
Здесь решение - https://stackoverflow.com/questions/9794985/config-error-this-configuration-section-cannot-be-used-at-this-path
Плюсы хостинга:
Минусы хостинга:
Хороший вариант - начать с хостинга. Как только база разрастется, запросы будут требовать оптимизации и диагностики - переехать на сервер VPS с более мощными параметрами.