S_S*_*S_S 6 asp.net application-pool iis-7.5
这是一个真正的挑战:我已经在我的计算机上设置IIS7.5并开始开发一个网站.每天晚上我都会在我的网络服务器上备份它,赢取2008r2 sp1(所有更新).它完美无瑕.
然而,在跨应用程序池共享cookie时遇到了一个巨大的问题.www.example.com设置为127.0.0.1所以我可以在本地测试网站.它创建了Cookie但是当我删除HOSTS记录(指向Web服务器)时 - Web服务器上的应用程序池崩溃了.它每次都会发生,并且可能必须对sessionID cookie执行某些操作,因为没有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
Run Code Online (Sandbox Code Playgroud)
到底是怎么回事?
小智 0
ASP.NET auth cookie 使用 web.config 中的 machineKey 设置进行加密和解密。如果您没有它,它会在每次应用程序启动时自动生成。最好将其设置为固定值,以避免应用程序重新启动之间 cookie 失效。
我不能确定,但可能 asp.net 会话 cookie 也依赖于这个加密密钥。我很确定 viewstate 也在使用它(这就是为什么当您在应用程序由于不活动而关闭后启动回发时,您会看到无效的 viewstate 错误)。
因此,尝试设置机器密钥并查看它是否仍然发生。您可以使用 IIS 生成一个,它会将其插入到 web.config 中的正确位置。
| 归档时间: |
|
| 查看次数: |
2678 次 |
| 最近记录: |