У меня есть два веб-сайта, которые более или менее идентичны, как на одном сервере, так и в разных пулах приложений. Пулы приложений настроены на запуск с учетными данными «NETWORK SERVICE».Просмотр ошибок состояния в разработке, но не в производстве
На одном веб-сайте - назовите эту копию разработки, я получаю печально известную ошибку «проверка состояния MAC-состояния представления». Это происходит, когда обратная передача происходит после простоя страницы в течение 20 минут. Мне сообщили об этом, потому что я не указываю машинный ключ в файле web.config или файле конфигурации машины. Ручная утилизация пула приложений воспроизводит ошибку, как ожидалось. Поэтому мой вопрос не в том, как остановить проблему, но я хочу знать , почему ошибка происходит в dev, но не в производстве. Единственная разница между настройкой двух сайтов - это метод аутентификации.
В разделе «Основные настройки» конфигурации IIS версия dev сайта устанавливается для подключения с использованием учетной записи службы, а в производственной версии используется «пользователь приложения» (пройти через проверку подлинности). В настройках аутентификации обе страницы настроены с олицетворением и проверкой подлинности Windows.
Это единственное различие, которое я вижу. Мои знания о том, как IIS обрабатывает аутентификацию на уровне сайта и пула приложений, довольно ограничены. Существует ли конкретная причина, по которой одна настройка должна приводить к обновлению машинного ключа, а другая - нет?
ViewState зависит от сеанса. Вы делаете какие-либо обманки с сеансами, которые могут аннулировать сеанс (Abandon, Clear) до обратной передачи? – JDPeckham
Нет. И как указано, между этими двумя сайтами нет разницы. Единственное различие заключается в способе аутентификации – Trent