IIS应用程序池自动中止,报503错误解决方法

前两天碰见一个问题,部署网站以后,浏览时老是报503,找了半天才发现是用户权限问题,如今记录一下,方便之后遇到的大伙快速解决问题,以致于不会浪费太多时间html

 

 解决方法:web

应 用程序-特定 权限设置未将 COM 服务器应用程序(CLSID 为 
{A9E69610-B80D-11D0-B9B9-00A0C922E750} 
) 的 本地 激活 权限授予用户 NT AUTHORITYNETWORK SERVICE SID (S-1-5-20)。可使用组件服务管理工具修改此安全权限。 
解决方法,给NETWORK SERVICE 加上访问iis服务的权限,具体方法以下: 
点击“开始”-“控制面板”-“管理工具”-“组件服务”-“计算机”-“个人电 脑”-“DCOM”选项, 
选择其下的“IIS ADMIN SERVICE”,右健选择“属性”,找到“安全”,在“启动和激活权限”中编辑“自定义”,添加账号“NETWORK SERVICE ”,给该账号赋予“本地启动”和“本地激活”的权限,从新启动IIS以后再访问同一站点,则一切正常。 安全

 

//大伙可能发如今IIS ADMIN SERVICE下右健选择“属性”,找到“安全”,在“启动和激活权限”中编辑“自定义”的按钮不可点击服务器

 

下面的内容就是解决这一问题的方式:网络

A9E69610-B80D-11D0-B9B9-00A0C922E750app

这个是win2008 R2 x64的安全特性.一些核心系统组件只能容许本地账号,TrustedInstaller有彻底控制权限,而不是本地管理员组工具

要在Windows Server 2008 R2 上修改 “IIS Admin Service” ,你须要授予本地管理员组有注册表权限:性能

1.在组件管理器中查到IIS的appid网站

2.使用regedit,定位到HKEY_CLASSES_ROOT\AppID\{刚查到的ID}”spa

3.右键点击{刚查到的ID},选权限

4.在权限设置窗口中点高级,选择全部者标签,选中administrators为全部者

5.授予administrators组有读/写等全部权 注意:务必不要修改TrustedInstaller的权限

 

503这个错误出现的缘由会有不少种,大伙要根据本身的状况排除一下,下面贴出几种缘由和排除思路(下面内容来自:http://www.cnblogs.com/onlytiancai/archive/2007/06/03/769309.html

缘由:

一、管理员可能关闭应用程序池以执行维护。
二、当请求到达时应用程序池队列已满。
三、应用程序池标识没有使用预约义帐户:网络服务,而本身配置了标识,可是配置的这个用户不属于IIS_WPG组
四、应用程序池启用了CPU监视,而且设置了CPU利用率超过必定百分比关闭应用程序池,而开发人员写的服务端页面(.asp,.aspx)执行效率不高,会引发CPU的长时间占用,最终达到设置的百分比,从而引发应用程序池关闭
五、应用程序池的性能选项卡的请求队列限制所填的数值过小,默认为1000,可修改为一个更大的值,好比说4500.
六、web.config的system.web/httpRuntime节点的appRequestQueueLimit属性设置的值过低。

排查思路:

一、先检查C:\WINDOWS\system32\LogFiles\HTTPERR\httperr1.log,看里面有没有503错误,503错误是不会记录到C:\WINDOWS\system32\LogFiles\W3SVC1下的,若是503那一行有AppShutdown字样,肯能是因为CPU占用率过高致使自动关闭应用程序池。若是是AppOffline多是因为应用程序标识出错引发的,若是是Disabled多是因为管理员手工关闭应用程序池引发的。根据这些信息而后再采起响应措施。二、根据缘由5和缘由6来设置更大的请求队列数目。三、禁用全部应用程序池回收选项。四、添加ASP.NET\Requests Current,ASP.NET\Requests Queued两个计数器,查看IIS的请求数和队列数。

相关文章
相关标签/搜索