Что происходит, когда я редактирую web.config?

Мне нужно отредактировать файл web.config в действующей среде Sharepoint, но я не уверен, что произойдет, если я это сделаю (я хочу выводить собственные ошибки).

Приведет ли это к перезапуску рабочего процесса IIS6?

Потеряют ли из-за этого активные пользователи свое состояние сеанса?

Или можно смело редактировать файл?

Вы можете определить сеансы, которые будут размещены на удаленном компьютере, поэтому сброс приложения не приведет к потере сеанса

Kamarey 25.03.2010 12:49
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
80
1
57 253
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

Ответ принят как подходящий

Пул приложений перезапустится, и состояние сеанса будет потеряно. Представьте, что каждое приложение ASP.NET (как определено в IIS) - это программа на рабочем столе. Сохранение web.config сделает что-то похожее на закрытие программы и ее повторное открытие.

Не уверен насчет IIS6, но в IIS7 и IIS8 это поведение дефолт, хотя вы можете изменить его через Пулы приложений> Дополнительные параметры> Повторное использование> Отключить повторное использование для изменений конфигурации = правда, что полезно для производственных сред, например, чтобы администраторы могут вносить изменения, которые не вступят в силу до следующего повторного использования. Я считаю, что с помощью Sharepoint можно запланировать изменения так, чтобы они применялись в определенное время.

nothingisnecessary 15.10.2014 22:53

@nothingisneeded Но, вызывает ли установка Application Pools > Advanced Options > Recycling > Disable recyclingсам перезапуск пула приложений? Черепахи до упора?

D'Arcy Rittich 19.06.2015 16:37

Привет, @DanGoldstein. Вы упоминаете «что-то похожее» при закрытии и повторном открытии программы. А как насчет статического состояния? Должно ли статическое состояние обеспечен быть удалено редактированием web.config? Причина в том, что я кэширую некоторые файлы web.config в статических переменных.

Dirk Boer 26.01.2016 21:41

Честно говоря, я больше не являюсь хорошим источником информации об этом. Когда я ответил, я все время использовал IIS и ASP.Net. В наши дни я просто увлекаюсь разработкой программного обеспечения.

Dan Goldstein 28.01.2016 03:20

@DirkBoer Я здесь только для того, чтобы найти окончательный ответ на ваш вопрос. По моему опыту, редактирование web.config не влияет на статические свойства.

Alex Dresko 17.02.2016 22:27

Я думаю, что вместо перезапуска «пула приложений» произойдет «перезапуск AppDomain». Поправьте меня, если я ошибаюсь.

Raghav 29.08.2016 11:44

Что делать, если в пуле приложений много приложений. Редактирование web.config одного сайта и перезапуск пула приложений кажутся некорректными.

Raghav 29.08.2016 12:28

В какой момент жизненного цикла asp.net web.config читается iis? В событии app_start?

user2156081 28.01.2017 15:22

Будет переработан AppDomain, а не AppPool. Таким образом, другие веб-приложения, работающие в рамках этого опроса, не пострадают.

Jay Shah 21.06.2018 02:05

Согласно этот ответ, похоже, что приложение будет ждать ответа на запросы, прежде чем перезапустить. Что немного отличается от closing the program and reopening it.. Или вы говорите, что это неверный ответ?

ispiro 17.09.2018 21:24
  1. да. Он будет переработан.
  2. да. Они проиграют свою сессию.
  3. да. Вы можете смело редактировать файл. Предлагаю вам прочитать эту статью MSDN: Работа с файлами web.config в Windows SharePoint Services

Как уже упоминалось некоторыми людьми: пул приложений сайта в IIS перезапустится (обычно это занимает пару секунд). В результате запрос следующей страницы будет медленнее (так как ничего больше не будет кэшироваться). Также будет потеряно состояние сеанса пользователей; НО в состоянии сеанса WSS по умолчанию не используется, в MOSS используется InfoPath Form Services. Так что, возможно, у вас нет больших проблем, связанных с потерей состояния сеанса.

С другой стороны; для решения этих проблем: обычно создается решение SharePoint (WSP), которое развертывает и запускает задание таймера для внесения изменений в web.config из кода (с использованием класса SPWebConfigModification объектной модели). Приятно то, что вы можете запланировать выполнение изменения, чтобы ваши пользователи этого не заметили.

Также, если состояние сеанса настроено как внепроцессное (база данных или служба), то при повторном использовании пула приложений не будет теряется любое состояние сеанса. Это так же верно для Sharepoint, как и для ванильного ASP.Net.

Когда вы редактируете web.config, он перезапускает AppDomain (НЕ AppPool) этого веб-приложения и очищает все занятые ресурсы и память. Таким образом, другие веб-приложения, работающие в этом пуле приложений, не пострадают. Также он очистит сеансы (в процессе) и кеш памяти.

Другие вопросы по теме