IIS站点里面做了虚拟目录,使用重定向的访问连接到文件共享服务器,作为web站点的上传下载路径

 

一次,遇到莫名错误,提示无法下载,但是过了一段时间或者iisreset后就能恢复正常。

日志报错信息如下:

Failed to start monitoring changes to '\\cluster-sql\Files\16\27221\a' because the network BIOS command limit has been reached. For more information on this error, please refer to Microsoft knowledge base article 810886. Hosting on a UNC share is not supported for the Windows XP Platform.

 

查询微软的KB 810886,找到问题原因和解决方法

http://support.microsoft.com/kb/810886

原因:

如果满足下列条件,则可能会发生此问题:

 

  • 如果客户端计算机提交对文件服务器使用服务器消息块 (SMB) 协议的同时,长期的请求,则可能会发生此问题。客户端计算机使用 FindFirstChangeNotification 函数来监视服务器共享的更改时,一种长期的请求。
  • 如果在客户端上的 MaxCmds 注册表值设置为小于 50,或在服务器上的 MaxMpxCt 注册表值设置为小于 50,则可能会发生此问题。

    注意MaxMpxCt 注册表值设置可能具有不同的名称,其他 SMB/CIFS 上实现。公共 Internet 文件系统 (CIFS) 规范将它称为 MaxMpxCount。

 

解决方法:

若要解决此问题,验证 MaxCmdsMaxMpxCt 注册表值被设置为 50 或更多。若要这样做,请按照下列步骤操作:

  1. 单击 开始、 单击 运行,键入 regedit,然后单击 确定
  2. 找到并单击下面的项在注册表中:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters
  3. 在右窗格中双击 MaxCmds 值。
  4. 数值数据 框中验证值是 50 次或更多。

    注意 在 Microsoft Windows 终端服务的环境中,您可能不得不 MaxCmds 注册表值设置为 500 或更多。有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    232476  (http://support.microsoft.com/kb/232476/ ) 终端服务器客户端连接和登录受 MaxWorkItem 和 MaxMpxCt 值
  5. 找到并单击下面的项在注册表中:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
    注意 请确保您进行此更改,到 lanmanserver\parameters 注册表项,而不在第 2 步中提到 lanmanworkstation\parameters 注册表项。
  6. 在右窗格中双击 MaxMpxCt 值。

    注意 在运行 Windows 2000 以前版本的 Windows 的 SMB 服务器,MaxMpxCt 注册表项被命名为 MaxMpxCount,但具有相同的功能。
  7. 数值数据 框中验证值是 50 次或更多。

    注意MaxMpxCt 值决定服务器允许来自单个客户端的同时进行的活动请求的最大数目。
  8. 退出注册表编辑器。

注意MaxCmdsMaxMpxCt 注册表条目是 REG_DWORD 十进制的项。如果它们不存在您的计算机上,您可以创建它们作为新 REG_DWORD 值。这些注册表项值的范围是 0 和 65535 之间。