部署网站之后,浏览时总是报503,找了半天才发现是用户权限问题,现在记录一下,方便以后遇到的大伙快速解决问题,以至于不会浪费太多时间。

WIN2008 R2系统部署配置iis7.5 (Internet Information Server)失败,一直未能启动服务,访问本地网络提示”Service Unavailable HTTP Error 503. The service is unavailable“。

服务器登录表现的症状是DefaultAppPool启动后,刷新网页后应用程序池立即自动停止。

使用系统日志查一下报错的3条详细信息:

第一条:应用程序池DefaultAppPool的标识无效。可能是为标识指定的用户名或密码不正确,或者用户不具有批登录权限。如果不更正标识,则当应用程序池接收到它的第一个请求时,应用程序池将被禁用。如果是批登录权限导致的此问题,则必须在授予权限之后更改 IIS 配置存储中的标识,然后 Windows Process Activation Service (WAS)才可以重试登录。如果在处理对应用程序池的第一个请求之后标识仍然无效,应用程序池将被禁用。数据字段包含错误号。

第二条:应用程序池DefaultAppPool已被禁用。Windows Process Activation Service (WAS) 未创建工作进程来为应用程序池提供服务,因为该应用程序池标识无效。

第三条:应用程序池DefaultAppPool已被禁用。Windows Process Activation Service (WAS)在启动为该应用程序池提供服务的工作进程时失败。

首先怀疑IIS ADMIN SERVICE权限。

解决方法:
应用程序-特定权限设置未将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下右健选择“属性”,找到“安全”,在“启动和激活权限”中编辑“自定义”的按钮不可点击,可以使用如下方法启用:
这个是win2008 R2 x64的安全特性.一些核心系统组件只能允许本地帐号,TrustedInstaller有完全控制权限,而不是本地管理员组。要在Windows Server 2008 R2 上修改 “IIS Admin Service” ,你需要授予本地管理员组有注册表权限:
1.在组件管理器中查到IIS的appid
2.使用regedit,定位到HKEY_CLASSES_ROOT\AppID\{A9E69610-B80D-11D0-B9B9-00A0C922E750}”
3.右键点击{A9E69610-B80D-11D0-B9B9-00A0C922E750}选权限
4.在权限设置窗口中点高级,选择所有者标签,选中administrators为所有者
5.授予administrators组有读/写等所有权 注意:务必不要修改TrustedInstaller的权限

处理完毕后,刷新页面,应用程序池不会自动停止了,但是IIS又报401.2错误:
401 - 未授权: 由于凭据无效,访问被拒绝。您无权使用所提供的凭据查看此目录或页面。

由于身份验证头无效,您无权查看此页


需要调整下IIS里边的匿名身份访问验证,点击对应的网站,按照如下操作:
1.功能视图---身份验证--全部禁用--开启--匿名身份验证-编辑--选择应用程序池标识;


2.功能视图---授权规则--右键添加允许规则--选择所有用户;


3、对应网站应用程序池的高级设置中,将应用程序池标识改为NetworkService;


最后重启一下IIS服务;

部署网站之后,浏览时总是报503,找了半天才发现是用户权限问题,现在记录一下,方便以后遇到的大伙快速解决问题,以至于不会浪费太多时间。WIN2008 R2系统部署配置iis7.5 (Internet Information Server)失败,一直未能启动服务,访问本地网络提示”Service Unavailable HTTP Error 503. The service is unavai...
打开本地网站,有的总是提示服务不可用,打开 IIS ,发现对应的 应用程序 已经 停止 了。开启再运行,马上又 停止 。 但又不是所有的 应用程序 都不行,有几个是好的,将报错的网站对应过去,一切正常。这排除了网站本身的毛病,问题出在 应用程序 身上。新建了几个 应用程序 ,都是不行的。真奇怪。难道系统对 应用程序 的数量有限制?删掉几个,还是不行。 查看系统日志,提示: Windows 不能让您登录,因为不...
应用程序 Default App Pool ’ 提供服务的进程关闭时间超过了限制 服务器经常产生“ 应用程序 Default App Pool ’ 提供服务的进程关闭时间超过了限制。进程 ID 是 ‘2068’。”的错误,导致 iis 处于假死状态,经了解是 IIS 应用程序 的设置问题。解决方法如下: Internet 信息服务( IIS )管理器-> 应用程序 -> Default App Pool ->右击属性 1、回收工作进程(分钟):选中,值为1740 2、回收工作进程(请求数目):不选(原先设置为35000) 3、在下列时间回收工作进程:不填 4、消耗太多内存时回收工作进程:全不选。
来源:http://www.guchengnet.com/1499.html IIS 6.0 IIS 7.5 应用程序 自动 停止 的解决方法 搜集整理 发表于2016年12月14日 有2.3个月没有用本地的 iis 测试网站了,打开 iis 后新建网站,打开网站直接显示503错误,查看程序 ,发现对应的程序 处于 停止 状态。一开始简单的以为新建的网站程序 没有开启,所以直接右键——对应的程序 —...
当访问系统后就造成 app lication pool 自动 停止 ,这个问题是由于在 app lication pool 的用户密码被修改了 解决方案: 1.打开 IIS 去到被 停止 app lication pool 2.点击高级设置-找到标识 然后输入新的密码
在Windows操作系统中,可以使用` iis app `命令来 停止 IIS 应用程序 。在Go语言中,可以使用`os/exec`包来执行该命令。下面是一个示例代码,演示如何 停止 指定名称的 IIS 应用程序 : ```go package main import ( "fmt" "os/exec" func main() { pool Name := "Your App Pool Name" // 应用程序 名称 cmd := exec.Command(" iis app ", "/a", pool Name, "/r") // 执行 iis app 命令 err := cmd.Run() // 执行命令并等待完成 if err != nil { fmt.Println(err) return fmt.Printf(" App lication pool %s stopped.\n", pool Name) 在上述代码中,我们通过`exec.Command`函数创建一个`*exec.Cmd`对象,该对象表示要执行的命令。然后,调用`Run`方法执行命令并等待完成。最后,输出提示信息表示 应用程序 已经 停止 。 你可以将上述代码中的` pool Name`变量替换为你要 停止 应用程序 的名称,来 停止 相应的 应用程序