iis6.0站点打不开,找不到服务器或 DNS 错误。非分页缓冲池内存不足故障一例

 

windows2003


 

非分页缓冲池内存不足故障一例

(2011-09-09 15:04:37)iis6.0站点打不开,找不到服务器或 DNS 错误。

问题:
iis装好后,运行了一段时间;一个月后有一天打开网站,却显示该页无法访问,telnet
端口开始可以,但后来执行telnet时,连接后会立刻断开。最后发现IIS的日志:D:\WINDOWS\system32\LogFiles\HTTPERR\httperr1.log
这个文件中有很多错误:

2010-07-02 01:13:17 – - – - – - – - – 2_Connections_Refused -
2010-07-02
01:13:22 – - – - – - – - – 16_Connections_Refused -
2010-07-02 01:13:17 – - –
- – - – - – 2_Connections_Refused -
2010-07-02 01:13:22 – - – - – - – - –
16_Connections_Refused -

原因:查资料后,发现默认情况下,如果可用的非分页缓冲池内存不足 20MB,IIS 6.0 中的 HTTP
服务停止接受连接,所以当时重启IIS也没有用,只能重启服务器释放了,微软官方说可以在注册表里把 EnableAggressiveMemoryUsage
值设为1解决。

解决http://support.microsoft.com/kb/934878/zh-cn

对于Number_Connections_refused 错误,可以通过如下解决:

要变通解决此问题,请将该
EnableAggressiveMemoryUsage 注册表项添加到以下注册表子项中:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters

然后,将
EnableAggressiveMemoryUsage 注册表项设置为 1。

要这样做,请按下列步骤操作:(最好备份注册表)

  1. 单击 开始 ,单击 运行 ,在
    打开 的框中键入 regedit ,然后单击 确定
  2. 单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
  3. 编辑 菜单上指向 新建 ,然后单击 DWORD

  4. 键入 EnableAggressiveMemoryUsage ,然后按 Enter 键。
  5. 编辑 菜单中上, 单击 修改
  6. 在在 数值数据 框中键入 1 ,然后单击 确定
  7. 文件 菜单中上, 单击 退出 以退出注册表编辑器。
  8. 重新启动 HTTP 服务。 要这样做,请按下列步骤操作:
    1. 单击 开始 ,单击 运行 ,在 打开
      的框中键入 cmd ,然后单击 确定
    2. 在命令提示符键入 net stop http / y ,然后按 ENTER 键。
    3. 在命令提示符键入 iisreset /restart ,然后按 ENTER 键。

============================================================================================

对于Timer_MinBytesPerSecond
错误或 Timer_ConnectionIdle 错误,网上解释与iis设置有关,可以通过如下解决:

1) 从 IIS 管理器右键单击
Internet Information Server (IIS) 管理器级别根目录上并转到属性。选中要启用直接编辑元数据库框。 单击确定。
2)
在记事本中打开 C:\Windows\system32\inetsrv\MetaBase.xml 文件,搜索有关 " MinFileBytesPerSec "。
将用于 MinFileBytesPerSec 设置从 240 更改为 0。 执行其他搜索, 该时间将 600 " ConnectionTimeout "。
保存更改并退出。
3) 重新启动 IISAdmin 服务以更改生效。

 

转载:http://hi.baidu.com/zhmzjs/item/f5c2b2c0fa64e1ba0d0a7b02

 

posted @ 2012-12-06 14:27  James-ping  阅读(1198)  评论(0编辑  收藏  举报