在开始之前,我知道使用iisreset被认为是不好的做法,但这不应该发生..
我们拥有什么:
Windows Server 2003 R2上有多台带有IIS6的计算机(64位和32位)
在多个应用程序中部署了几个WCF Web服务(.NET运行时2.0),每个应用程序都有自己的应用程序池,每个应用程序池在其他Windows帐户下运行。
会发生什么:
这是“正常”的iis行为吗?我应该避免使用iisreset,还是我们在.NET代码中做错了什么?
答案 0 :(得分:10)
应用程序池应该在iisreset上重新启动,但它们确实在iis外部运行(在COM +中)以确保可靠性。这意味着如果应用程序行为不端,他们可能不会回来,但IIS和其他应用程序将(应该)回来。所以是的,这是“正常的”。
P.S。 我也希望自己“出去”自己作为iisreset的自豪用户。不好的做法? Bah!; D
答案 1 :(得分:5)
在第一个请求进入之前,IIS不会立即启动ASP.NET辅助进程(w3wp.exe)。当您说“未启动”时,它是否意味着您尝试访问某些WCF Web服务(在iisreset之后),并且您收到服务不可用错误,因为无法启动appPool?您是否在事件日志中看到任何与IIS W3SVC相关的条目?
如果有的话,他们可能会告诉你为什么他们无法开始;将它们发布在这里。
答案 2 :(得分:3)
原因:
在第一个请求进入之前,IIS不会立即启动ASP.NET辅助进程(w3wp.exe)。当它显示“未启动”时,表示您尝试访问某些WCF Web服务(iisreset之后)因对象而失败在内存中占有一些空间,并且因为无法启动appPool而导致服务不可用错误。
解决方法:
使用以下命令创建批处理文件&安排它。
net stop 23svc
net stop msftpsvc
net stop smtpsvc
net stop PleskControlPanel
net stop HTTPFilter
iisreset / restart
net start w3svc
net start msftpsvc
net start smtpsvc
net start PleskControlPanel
net Start HTTPFilter
答案 3 :(得分:3)
有类似问题 - 重新启动IIS后,DefaultAppPool已停止。
在应用程序事件日志中发现错误:
Windows无法让您登录,因为无法加载您的个人资料。检查您是否已连接到网络,或者您的网络是否正常运行。如果此问题仍然存在,请与网络管理员联系 详细信息 - 拒绝访问。
通过在DefaultAppPool中设置高级设置选项加载用户个人资料到错误。
希望它有用。
答案 4 :(得分:0)
在先前的支持角色中,我管理了几个运行各种.NET混乱的IIS服务器。当AppPool无法启动时,通常是一个糟糕的登录凭据。
答案 5 :(得分:-1)
通过应用程序池的高级设置重新设置身份(身份验证凭据)对我有用。
之前我更改了我的活动目录密码,因为应用程序池已经在运行,所以在我执行 IISRESET 之前它运行良好。