如何在 Windows Server 2016 中的非标准驱动器上运行 IIS 8.5?

如何在 Windows Server 2016 中的非标准驱动器上运行 IIS 8.5?

首先,如果这是一个基本问题,我深表歉意。我是一名 Linux 系统管理员,恰好目前正在处理 Windows。欢迎随意编辑问题或在适当的地方添加标签。

前提:我正在将网站从 Windows Server 2003 上的 IIS 6.0 迁移到 Windows Server 2016 上的 IIS 8.5。IIS 8.5 最初安装在默认位置,当网站位于C:\inetpub\wwwroot新服务器下时,它运行良好。但是,由于组织政策,网站需要位于E:\新服务器的驱动器上,而不是C:\驱动器上。首先,我尝试简单地将网站从移动到C:\inetpub\wwwrootE:\inetpub\wwwroot在 IIS 中更新对该网站的引用,但该网站不会出现。(我不记得我在这里收到的确切错误消息。如果有帮助,我可以重建此环境并复制错误。)

之后,我联系了一位同事,他告诉我脚本他在 Windows Server 2012 的非标准驱动器上安装网站时使用了该脚本。下面是该脚本功能的一个总结:

  1. 停止 IIS
  2. 复制C:\inetpubE:\inetpub(或指定的任何驱动器),同时保留文件所有权和 ACL 信息
  3. 使用appcmd set config指定以下内容的目录路径:
    • 日志
    • 配置历史记录
    • 临时文件
    • 默认站点
    • 错误页面
  4. 修改以下注册表组件:
    • HKLM\System\CurrentControlSet\Services\WAS\Parameters\ConfigIsolationPath
    • HKLM\Software\Microsoft\inetstp\PathWWWRoot
    • HKLM\Software\Microsoft\inetstp\PathFTPRoot
    • HKLM\Software\Wow6432Node\Microsoft\inetstp\PathWWWRoot
    • HKLM\Software\Wow6432Node\Microsoft\inetstp\PathFTPRoot
  5. 启动 IIS

我运行了该脚本,但最终看到以下错误iisreset /start

正在尝试启动... 启动尝试失败。IIS 管理服务或万维网发布服务,或依赖于它们的服务无法启动。该服务或相关服务可能在启动过程中出现错误或被禁用。

我在 Windows 服务菜单下找不到 IIS 管理服务,并且当我尝试启动万维网发布服务时,收到以下错误消息:

Windows 无法在本地计算机上启动万维网发布服务。

错误 1068:依赖服务或组无法启动。

我接下来的想法是,也许注销并重新登录 Windows 会有所帮助,因为注册表更改可能要等到注销后才会生效。然而,这样做并没有帮助。

鉴于该脚本适用于 Windows Server 2012 / IIS 8 并且我当前的环境是 Windows Server 2016 / IIS 8.5,除了脚本执行的操作之外,我还需要做其他事情吗?

答案1

我不确定回滚脚本所做的更改有多容易。我会卸载 IIS 并重新安装。

建议从非 C 盘运行网站,但我不会移动整个C:\inetpub目录。而是创建新网站并将E:\其日志文件也指向不同的驱动器。这样只剩下几个配置和错误页面文件以及一些临时文件。运行网站一段时间后,C:\inetpub您可能需要监控其大小。C:\inetpub\temp

如果您想使用当前位置/设置,则需要运行一些诊断程序来找出问题所在。正在运行吗Windows Process Activation Service?事件日志中有什么内容吗?

相关内容