Сбой пула приложений IIS7 при чтении файлов cookie - PullRequest
6 голосов
/ 16 декабря 2011

Это настоящий вызов: Я установил IIS7.5 на свой компьютер и начал разрабатывать веб-сайт. Каждую ночь я делаю резервные копии на своем веб-сервере, win 2008r2 sp1 (все обновления). Работает без нареканий.

Тем не менее, я столкнулся с огромной проблемой при совместном использовании файлов cookie между пулами приложений. www.example.com был настроен на 127.0.0.1, чтобы я мог протестировать сайт локально. Он создал куки, НО, когда я удалил запись HOSTS (чтобы указать на веб-сервер) - пул приложений на веб-сервере упал. Это происходит каждый раз, и, возможно, придется что-то делать с cookie-файлом sessionID, так как без cookie-файлов это НЕ приводит к краху!

файл журнала:

Faulting application name: w3wp.exe, version: 7.5.7601.17514, time stamp: 0x4ce7afa2
Faulting module name: nlssorting.dll, version: 4.0.30319.239, time stamp: 0x4e182039
Exception code: 0xc00000fd
Fault offset: 0x0000000000001d7d
Faulting process id: 0x9f8
Faulting application start time: 0x01ccbbd76b7a443c
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe
Faulting module path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\nlssorting.dll
Report Id: a9cfd0cf-27ca-11e1-bced-00215e5304da

Что происходит?

1 Ответ

0 голосов
/ 27 января 2012

ASP.NET auth cookie шифруется и дешифруется с помощью параметра machineKey в web.config.Если у вас его нет, он генерируется автоматически при каждом запуске приложения.Рекомендуется установить фиксированное значение во избежание аннулирования файлов cookie между перезапусками приложения.

Я не уверен, но возможно, что файл cookie сеанса asp.net также зависит от этого ключа шифрования.Я почти уверен, что viewstate также использует его (именно поэтому вы можете увидеть ошибки invalid-viewstate при запуске обратной передачи после закрытия приложения из-за неактивности).

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...