Как запретить msdeploy перезаписывать конфигурацию сайта IIS на сервере, хранящемся в web.config - PullRequest
0 голосов
/ 08 января 2019

Я развертываю с использованием VS2017, и MSdeploy WMSVC, кажется, перезаписывает настройки моего сайта IIS, на которые выполняется развертывание.

В настройках сайта в диспетчере IIS есть панель проверки подлинности IIS, учетные данные для анонимной проверки подлинности установлены в качестве идентификатора пула приложений.

enter image description here

После развертывания все запросы получают 401.3 несанкционированную ошибку, поскольку для параметра «Учетные данные для анонимной аутентификации» задано значение «* 1010» *

enter image description here

Очевидно, что это перезаписывается из-за конфликта между настройками, специфичными для СЕРВЕРА, и настройками, специфичными для РАЗРАБОТКИ.

В каком сценарии MSDeploy, какую стратегию мы можем использовать, чтобы предотвратить использование целевых параметров IIS в настройках сервера разработки? Моя первая мысль: IIS сначала ищет site.config, который будет содержать system.webService, затем web.config обновляет / переопределяет любой из них, например, <handler remove key="xxx" /> и так далее. Разрешается ли это только преобразованиями XDT?

1 Ответ

0 голосов
/ 08 января 2019

На мой взгляд, лучшим решением для этого является использование web.config XDT transforms . Поскольку файл web.config также будет опубликован при развертывании на сервере IIS. Если вы установили параметр anonymousAuthentication в файле web.config, он будет использовать параметр web.config вместо настройки по умолчанию для вашего сервера.

Вот еще одно решение (оно покажет страницу с ошибкой):

Если вы не хотите, чтобы web.config изменял настройку IIS по умолчанию, вы можете изменить делегирование функции, чтобы отключить переопределение параметра из web.config.

Вы можете найти его из функции управления IIS:

enter image description here

Выберите только для чтения:

enter image description here

Примечание: Если вы измените анонимную аутентификацию из web.config. Вы столкнетесь с ошибкой ниже:

enter image description here

...