Служба приложений Azure в настоящее время не включает встроенную поддержку Let's Encrypt, но есть поддерживаемое сообществом расширение, которое выполняет свою работу.
https://github.com/sjkp/letsencrypt-siteextension/wiki/How-to-install
Это расширение использует веб-работучтобы облегчить автоматическое обновление сертификата, поэтому приложение должно быть всегда включено для автоматического обновления для работы.Если вы используете слоты развертывания, имейте в виду, что вам нужно установить расширение в каждом слоте, а затем добавьте параметр слота WEBJOBS_STOPPED = 1 в каждый непроизводственный слот (при условии, что вы не используете другие веб-задания в непроизводственных слотах, которыенужно запускать в непроизводственной среде).Это гарантирует, что веб-работа всегда присутствует в рабочем слоте и выполняется только в рабочем слоте.
Также следует учитывать, что если вы выполняете код веб-развертывания в службе приложений из Visual Studio с помощью команды «Удалить дополнительные файлы вопция публикации файла пункта назначения отмечена, что при этом удаляется веб-задание из слота, в который вы публикуете.У вас есть несколько вариантов, если это относится к вам:
- Обновляйте сертификаты вручную каждые три месяца.
- Повторно устанавливайте расширение каждый раз, когда вы публикуете (вам не нужно его перенастраивать).
- Клонируйте веб-задание в своем решении и опубликуйте его вместе со своим проектом.
Могут быть и другие варианты, но это те, которые я исследовал.
Microsoft утверждает, что это расширение представляет собой поддержку Let's Encrypt, но Microsoft не поддерживает это расширение.Вот место, где можно проголосовать за встроенную поддержку Let's Encrypt в Azure, если вы считаете это важным:
https://feedback.azure.com/forums/170024-additional-services/suggestions/16957756-add-integration-with-let-s-encrypt