Home » Советы по развертыванию в веб-приложении Azure

Советы по развертыванию в веб-приложении Azure

В этом посте я поделюсь своим опытом развертывания решения CMS 12 в самоуправляемом веб-приложении Azure. Хотя официальная документация обеспечивает хорошую отправную точку, я хотел бы поделиться некоторыми советами и потенциальными ловушками.

Для этого блога я предполагаю, что у вас уже есть решение CMS 12, готовое к развертыванию.

1. Простое создание веб-приложения + базы данных

Вы можете использовать «Веб-приложение + база данных» лезвие создания ресурса из MarketPlace, что упрощает создание веб-приложений и ресурсов базы данных SQL. Этот поток автоматически создаст безопасное соединение между веб-приложением и базой данных и обеспечит рекомендации по безопасному доступу к базе данных. Имя пользователя и пароль базы данных будут сгенерированы автоматически, а строка подключения добавлена ​​в конфигурацию веб-приложения. При необходимости вы можете обновить настройки базы данных позже.

💡 После создания не забудьте обновить автоматически добавленное имя строки подключения в конфигурации веб-приложения на ЭПисервердб и добавить MultipleActiveResultSets=Истина.

2. Выберите правильный уровень служебной шины

Для системы событий CMS требуются темы, поэтому вам нужно выбрать как минимум ценовую категорию «Стандартный». Если вы выберете базовый уровень (как я), вы получите следующее исключение при запуске:

3. Облачная конфигурация

Существует два способа настройки ресурсов Azure.

Настроить с помощью кода

Для развертываний DXP вы можете просто добавить AddCmsCloudPlatformSupport метод, однако для самостоятельных развертываний Azure вам потребуется настроить с помощью EPiServer.Azure пакет напрямую. Видеть это почта для получения дополнительной информации о параметрах конфигурации кода.

services.AddAzureBlobProvider(options => options.ContainerName = "mosey-media");
services.AddAzureEventProvider(options => options.TopicName = "mosey-events");

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

Настройка через файл appsettings

На мой взгляд, конфигурация кода чище и обеспечивает больший контроль, однако вы также можете настроить с помощью appsettings.json в соответствии с Оптимизировать документацию. При этом обратите внимание, что атрибут ConnectionString для AzureBlobProvider и AzureEventProvider предназначен для фактической строки подключения, а не для имени строки подключения.

4. Конфигурация поиска

Чтобы настроить поиск и навигацию, добавьте следующие параметры приложения в конфигурацию веб-приложения.

Read more:  Лавров объясняет, почему Россия видит в Украине угрозу — RT Россия и бывший Советский Союз

episerver__Find__DefaultIndex

episerver__Find__ServiceUrl

💡 Обратите внимание на двойное подчеркивание в имени ключа, чтобы убедиться, что оно переведено в переменную среды.

5. Создайте пользователя-администратора

Чтобы зарегистрировать пользователя с правами администратора, добавьте следующую строку в файл Startup.cs. Это зарегистрирует промежуточное программное обеспечение запуска для перенаправления на страницу регистрации при первом запросе к среде.

services.AddAdminUserRegistration();

💡 Если вы создали свой сайт из шаблона сайта Alloy или CMS Empty, то эта строка уже добавлена.

6. Ошибка сертификата HTTPS

Если сайт не загружается и вы видите «Сбой фоновой службы» и/или «Невозможно настроить конечную точку HTTPS» исключений в потоке журнала, проверьте настройку приложения «urls» и удалите любой URL-адрес https.

"urls": "http://*:8080/"

Я получал это исключение при использовании домена по умолчанию .azurewebsites.net

13 июля 2023 г.

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.