Не могли бы вы рассказать мне, что именно происходит, когда мы редактируем файл Web.config (во время выполнения) на сервере IIS.
Приложение, зависящее от web.config, автоматически перезапускается? Если да, можно ли отменить автоматический перезапуск (или перезагрузить web.config)?
iis
web.config
Бастьен Вандамме
источник
источник
Ответы:
ASP.NET AppDomain перезапускается всякий раз, когда вы «касаетесь» web.config. Можно отключить уведомление об изменении файла (FCN) для папки, но обычно это не лучший выбор, если вы можете помочь. Если вы отключите его, это просто означает, что вам нужно вручную перезапустить пул приложений, чтобы изменения вступили в силу.
До IIS7 только изменения ASP.NET вызывали бы перезапуск AppDomain, но с IIS7 и многими настройками, расположенными в web.config, это более распространенная проблема. то есть изменение документа по умолчанию в IIS 7 Manager приведет к тому, что AppDomain перезапустится.
В идеале вам просто нужно снизить уровень изменений или иногда применить изменение к applicationHost.config (что не вызывает перезапуска AppDomain), а не к web.config.
источник
Приложение, которое использует web.config, перезапустится, когда вы его измените, здесь есть дополнительная информация:
http://msdn.microsoft.com/en-us/library/ms178473.aspx
Я не знаю какого-либо способа предотвратить это (и я не уверен, почему вы хотите - возможно, вы можете предоставить более подробную информацию о том, чего вы пытаетесь достичь).
источник
К сведению - в ASP.NET 2.0 вы можете использовать встроенные события мониторинга работоспособности для регистрации перезапусков приложений вместе с причиной перезапуска. Это позволит вам четко документировать, когда и как часто это происходит. Это достигается путем редактирования главного файла web.config для машины.
За дополнительной информацией:
http://blogs.msdn.com/tess/archive/2006/08/02/asp-net-case-study-lost-session-variables-and-appdomain-recycles.aspx
источник
[Просто примечание]
Я знаю, что это старый, но это все еще заслуживает отметить.
Скотт Форсайт - неправильный ответ MVP .
Это не верно.
Ответ Whisk является наиболее технически правильным и полным ответом, поскольку содержит ссылку на MSDN , включающую одну важную деталь:
Это особенно важно, когда мы говорим о веб-сервисах. Это указывает на то, что все может быть в порядке, сделайте перезапуск в середине дня безопасно.
источник