发现不少客户都会遇到服务器IIS出现假死的情况。为了能更好的为客户服务,我查找了一些解决IIS假死的办法仅供大家参考
打开IIS 你就会看到应用程序池,默认只有一个应用程序池,查看应用程序池的属性,会发现他的回收时间,默认多达,1740分钟,就是说,需要在1740分钟后才回收此应用程序池,如果在这个时间内,达到请求的最高限制,那么就会出现ASP假死的情况,这个就是大型网站出现假死的情况,反而,小型网站确不会出现这样的情况,因为他请求少,流量少,还没达到限制数量。当然要看你的服务器上网站数目而定。
单个网站解决方法:
把应用程序池回收时间缩短到300-600分钟,其间回收过程中,需要占用一点CPU资源,没办法,为了稳定性,再把回收时间设为凌晨5点。
多网站解决方法:
假设一台服务器目前拉了70个网站左右,那么可以新建六个应用程序池,把每个池回收时间缩小到300分钟,然后再分配每个池10个网站左右(这个分配是要求你的网站访问量所定)如果某个网站,访问量大,就单独给他一个程序池,但是这样做的后果就是需要大内存,一个池现在占用120M内存左右,反正内存大,没关系。那么多网站如何分配应用程序池,打开IIS--查看你要分配的网站属性,,查看主目录--在下面 你就会看到应用程序池了,分配一个就行了。
大家在使用iis6时如果装了动网论坛肯定有出现过iis6假死现像就是asp网页打开慢但是iis却是正常的静态网页打开速度一样这时候我一直是重启的方法查了官方的资料结果没有
据官方资料说win2003很快就要打这个补丁了是iis6对access驱动支持不理像也算是一个bug吧由于服务器虚拟主机多而且大多支持asp如果一旦假死就无法运行在多方面的资料查找下找到了一个比较简单的方法具体测试是通过了iis6自带数据应用程序池现在就利用他来解决假死
首先把bbs设一个单独的目录然后点击应用程序池新建应用程序池输入应用程序池id
然后把bbs的虚拟目录下面的就用程序池选择刚才新建的应用程序池
然后再回到刚才设好的应用程序池点击属性把回收工作进程数(分钟)及回收工作进程数还有在下列时间回收时间进程勾上然后在下列时间回收程序池里左边添加选择一个时间一般来说网站到凌晨3点的时候基本人都很少了这时回收一下bbs的进程数就可以解决了iis假死的现像
当然还可以配置其他信息比如说iis6的用户名 我们可以打开计处机管理然后打开计算机用户管理添加一个用户设置好后在应用程序池里面标识把添加的用户放上去用用户来测试回收的进程当然还有其他配置其实很简单只要你好好看一下就能明白意思
对于部分人来说这种方法可能不太方便所以可以用一个工具来回收应用程序池这样方便而且快捷个人用户当然不需要这种工具公司用户的话服务器压力挺大所以都用工具来解决一些问题所括iis的备分及虚拟主机ip的统一修改及端口访问的ip记录用批处理是一个很简单又方便的方法所以把一台服务器做的安全并不是哪么容易的事特别是iis经常去官方网站搜索资料是一个好习惯还有就是经常性的访问日志及注册表的用户还有加载运行的程序及服务也是一个好方法所以要学会如何遇到问题如何处理问题!!!!
推荐一个软件 IIS守护程序 下载地址 >
为实现负载平衡,我们可能会使用多个WEB服务器,也就会需要给多个IIS配置同样的站点和应用程序池那么我们需要一个一个的重新建吗当然不用,我们只需要一些简单的命令就可以在IIS7(Windows Server 2008)或IIS75(Windows Server 2008 R2)上来导出导入这些配置了
当我们在IIS7或IIS75上创建站点时,IIS会为我们自动创建一个对应该站点的唯一的应用程序池所以,我们要导入网站信息,就必须先导入应用程序池信息
在IIS7+上导出所有应用程序池的方法:
%windir%\system32\inetsrv\appcmd list apppool /config /xml > c:\apppoolsxml
这个命令会将服务器上全部的应用程序池都导出来,但有些我们是我们不需要的,要将他们删掉比如:
DefaultAppPool
Classic Net AppPool
如果在导入时发现同名的应用程序池已经存在,那么导入就会失败
导入应用程序池的方法:
%windir%\system32\inetsrv\appcmd add apppool /in < c:\apppoolsxml
这样就可以将全部的应用程序池都导入到另一个服务器中了
导出全部站点的方法:
%windir%\system32\inetsrv\appcmd list site /config /xml > c:\sitesxml
同样,我们需要编辑sitesxml文件删除不需要的站点如:
Default Website
导入站点的方法:
%windir%\system32\inetsrv\appcmd add site /in < c:\sitesxml
至此,导入工作完成了,看看两台服务器的IIS配置一样了吧
另外,介绍下单独导出导入一个站点的方法
导出单独应用程序池:
%windir%\system32\inetsrv\appcmd list apppool “应用程序池名称” /config /xml > c:\myapppoolxml
**字体的就是要导出的应用程序池名称
导入单独应用程序池:
%windir%\system32\inetsrv\appcmd add apppool /in < c:\myapppoolxml
导出单独站点:
%windir%\system32\inetsrv\appcmd list site “站点名称” /config /xml > c:\mywebsitexml
**字体的就是要导出的站点名称
导入单独站点:
%windir%\system32\inetsrv\appcmd add site /in < c:\mywebsitexml
以上就是关于IIS7.5时常假死,怎么解决全部的内容,包括:IIS7.5时常假死,怎么解决、如何解决浏览ASP网页时IIS7出现404.17错误、如何在IIS7或IIS7.5中导入导出站点及应用程序池等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)