问题描述

最近在做一个Skyper For Business Server 2015全新部署的项目,客户非要在Windows Server 2016上部署,当在Windows Server 2016上部署的时候提示先决条件检查失败,无法安装RewriteModule
Win2016上安装SFB2015先决条件安装失败:RewriteModule
进一步检查日志,日志报错如下:
Win2016上安装SFB2015先决条件安装失败:RewriteModule
尝试手动安装RewriteModule同样报错,提示无法安装
Win2016上安装SFB2015先决条件安装失败:RewriteModule
经过进一步检查发现是由于rewrite_2.0_rtw_x64'的版本无法在我的Windows Server 2016上检测到IIS 10,这就是为什么它在我的操作系统上无法安装Skype for Business 2015的原因。

解决方案

有了上面的结论,通过搜索相关文章找到了一种通过修改注册表方式改变IIS版本的方案(虽然这种方案是官方不推荐的,但官方没有推出解决方案之前也只能通过修改注册表方案解决该问题了)

  1. 首先我们打开注册表,导航到:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ InetStp
  2. 找到MajorVersion这个选项,MajorVersion值属于IIS,并且由于Skype for Business无法识别此版本的MajorVersion值,因此必须将其更改为可识别的其他版本。(默认版本是10)
    Win2016上安装SFB2015先决条件安装失败:RewriteModule
  3. 双击MajorVersion,修改为10进制,并将值修改为7,如图所示:
    Win2016上安装SFB2015先决条件安装失败:RewriteModule
    Win2016上安装SFB2015先决条件安装失败:RewriteModule
  4. 再次运行步骤2,您会发现可以安装了。
    Win2016上安装SFB2015先决条件安装失败:RewriteModule
    Win2016上安装SFB2015先决条件安装失败:RewriteModule
  5. 安装成功后再次打开注册表,导航到KEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ InetStp,将MajorVersion值修改回原来的10,如图所示:
    Win2016上安装SFB2015先决条件安装失败:RewriteModule

至此问题处理完成,不知道微软什么时候能解决这个问题。