通过安装和配置AD域解决Windows Server 2016的IIS无法加载SMB文件卷文件的问题

1. 问题描述

通过客户反馈我们发现Windows Server 2016的IIS无法加载SMB文件卷的文件,显示的错误是:

未能加载文件或程序集“Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。指定的服务器无法运行请求的操作。 (异常来自 HRESULT:0x8007003A)

表现形式类似于下面这个截图:


图1:指定的服务器无法运行请求的操作 (异常来自 HRESULT:0x8007003A)

经过实验我们发现该问题是Windows Server 2016独有的问题,在Windows Server 2012以及2008R2上都没有出现DLL加载错误。这个问题也与阿里云SMB服务无关,用Windows Server 2016挂载另一台机器的文件卷也同样出现加载问题。

经过我们不断研究和实验,发现在安装和配置好AD域之后,2016上IIS加载文件卷文件发生错误的问题可以得到解决。接下来我们就详细介绍一下如何在Windows Server 2016上安装和配置Active Directory服务。

2. 在Windows Server 2016上安装和配置Active Directory服务

2.1. 安装Active Directory域服务和DNS服务器

进入服务器管理器,选择 管理->添加角色和功能->基于角色或基于功能的安装->从服务器池中选择服务器->勾选 Active Directory 域服务 和 DNS 服务器->按几次下一步直到确认安装。

图2.1.1:选择 添加角色和功能

图2.1.2:选择 基于角色或基于功能的安装

图2.1.3:选择 从服务器池中选择服务器

图2.1.4:选择 Active Directory 域服务 和 DNS 服务器

图2.1.5:确认安装

2.2. 配置Active Directory域服务

下面给出最简单的Active Directory域服务的配置方式。在本机生成域并且将本机加入域。域内只有一台机器。

  1. 在 服务器管理器 的左边栏点击 AD DS,在右上角点击 更多;
  2. 在 所有服务器 任务详细信息 中点击 将此服务器提升为域控制器;
  3. 在 Active Directory 域服务配置向导 的选择部署操作时选择 添加新林 ,并且指定根域名(比如iis-test-2016.com);
  4. 给 目录服务还原模式(DSRM) 键入密码,点击下一步;
  5. DNS选项 点击下一步;
  6. 其他选项 点击下一步;
  7. 路径 点击下一步;
  8. 查看选项 点击下一步;
  9. 先决条件检查 点击安装;
  10. 安装完成会提示需要重启;
  11. 重新登陆时会提示 请等候Group Policy Client;
  12. 安装完成之后进入到 控制面板->所有控制面板项->系统,即可看到 域 已经设置成了 iis-test-2016.com;
  13. 再次打开出现加载问题的网站,问题解决。

    图2.2.1:在服务器管理器的左边栏点击AD DS,在右上角点击更多

图2.2.2:在 所有服务器 任务详细信息 中点击 将此服务器提升为域控制器

图2.2.3:在 Active Directory 域服务配置向导 的选择部署操作时选择 添加新林 ,并且指定根域名(比如iis-test-2016.com)

图2.2.4:给 目录服务还原模式(DSRM)键入密码,点击下一步

图2.2.5:DNS选项 点击下一步

图2.2.6:其他选项 点击下一步

图2.2.7:路径 点击下一步

图2.2.8:查看选项 点击下一步

图2.2.9:先决条件检查 点击安装

图2.2.10:安装完成会提示需要重启

图2.2.11:重新登陆时会提示 请等候Group Policy Client

图2.2.12:在 控制面板->所有控制面板项->系统,即可看到 域 已经设置成了 iis-test-2016.com

2.3. 其他问题

如果用户已经有了DNS域名,注意这个Windows Server 2016使用的DNS作为内部使用的DNS,不要与用户外部用的DNS重名,否则会引发DNS解析错误导致用户外部服务不可用。

如果在操作过程中发生了其他的IIS错误,请参考《IIS服务在阿里云NAS上的最佳实践》。

3. 附录

3.1. Windows IIS服务挂载NAS共享文件存储

https://help.aliyun.com/document_detail/54986.html

3.2. IIS服务在阿里云NAS上的最佳实践

https://yq.aliyun.com/articles/692462

3.3. Windows Server 2016加载dll错误

https://stackoverflow.com/questions/54245000/windows-server-2016-iis-hosted-website-failed-to-load-dll-on-a-remote-file-share

通过安装和配置AD域解决Windows Server 2016的IIS无法加载SMB文件卷文件的问题相关推荐

  1. 统一沟通_边缘安装及配置之十七_(Windows Server 2008 R2 SP1英文版)

    接上一章 <统一沟通_内部访问测试与OUTLOOK之十六>! 在这章中,我们学习统一沟通_边缘安装及配置! 1.逻辑思路! (1).安装好操作系统,计算机名称命令! (2).将边缘服务器名 ...

  2. 服务器2008系统安装iis教程,Windows Server 2016系统安装IIS图文配置教程

    平时我们使用较多的还是Linux系统,即便有接触到Windows系统的话,也使用的2003系统,这个以前接触较多且安装IIS以及其他软件的时候比较熟悉.或者我们可以使用宝塔这么常用的WEB环境一键快速 ...

  3. Windows Server 2003 AD域升级至Windows Server 2008 R2实战案例

    某公司2003AD升级为2008R2AD过程 域名是:testad.com DC1:AD004(windows 2003 AD,DNS.GC.五大角色) DC2:AD005(windows 2003 ...

  4. 计算机管理添加域用户,Windows Server 2016 域控制器添加用户

    企业部署域控制器是有利于IT运维,使得权限集中.安全性加强.权限分明.方便用户共享文件:总之对于运维来说好处大大的.建立好了域控制器和辅助域控制器,剩下的就是要把客户端加入到域控制器,不然这个域控制器 ...

  5. Windows Server 2016中添加AD域控制器

    Windows Server 2016中添加AD域控制器 查看全文 http://www.taodudu.cc/news/show-6623633.html 相关文章: ABB机械手RobotStud ...

  6. 安装Windows Server 2016操作系统

    1.先准备镜像文件 进入msdn官网 https://msdn.itellyou.cn/ 选择你需要安装的版本 这里以下面为例 2.复制之后打开迅雷 输入复制内容 下载 3.打开虚拟机(VMware) ...

  7. Windows Server 2016服务器配置

    1.Windows Server 2016安装MySQL8 参考博客:Windows Server 2016安装MySQL8[图文]_甜虾的个人博客_51CTO博客 2.在Windows Server ...

  8. Visual Studio 2017 调试 windows server 2016 Docker Container

    网上很多文章都是在win10下,用Docker for windows工具进行Docker的安装部署的.用知道windows server 2016已经原生支持Docker了,其windows Con ...

  9. Windows server 2016 AD域的安装和升级域控制器

    首先我们要先安装好Windows Server 2016的操作系统.之后我们需要添加角色和功能. 为什么要安装AD域和升级成为域控制器呢? 因为域就像一个超级管理者,它可以管理加入到域网络中的所有机器 ...

最新文章

  1. java 面向接口编程的理解
  2. Can't connect to MySQL server on 'localhost' 10061
  3. Centos 利用yum源安装 nginx stream模块
  4. 爬虫结果数据完整性校验
  5. 【一周一算法】算法2:邻居好说话——冒泡排序
  6. 上海市社会保险费缴费标准
  7. python迭代器_使用Python的迭代器遍历可迭代对象
  8. Netty工作笔记0077---handler链调用机制实例4
  9. QCC3003x BLE 设置私有地址
  10. 《简明python教程》沈洁元
  11. 计算机的开机自检是由什么完成的,什么是开机自检 取消开机自检方法【方法详解】...
  12. 怎么在服务器里修改分机的ip,Avaya1608IP话机设置步骤、分机号重设、电话机重置_Avaya1608IP电话机设置步骤、分机号重设、电话机重置_软件教程_了忧科技...
  13. 处nm是什么意思_nm是什么意思
  14. git commit之后,回退撤销commit
  15. eclips无法查看源码
  16. 疯狂Android讲义(第2版)重印10次的超级畅销书
  17. php四舍六入五成双算法
  18. 整理一份API接口,包括音乐API,图片API,聚合API等等
  19. 开车,开车,裤子里穿丝袜是什么感觉?
  20. Mysql数据库学习笔记(2020-04-18 星期六)

热门文章

  1. python接口自动化(三十)--html测试报告通过邮件发出去——中(详解)
  2. python中高阶函数map怎么用_python六十课——高阶函数之map
  3. .net前台ajax,asp.net利用Ajax和Jquery在前台向后台传参数并返回值
  4. 小狗扫地机器人与石头_石头扫地机器人 T7:使用一周后的真实测评报告
  5. antd权限管理_Ant Design Pro开发后台管理系统(权限)-阿里云开发者社区
  6. html目录清华,清华大学HTML、《网页设计与制作》讲义.ppt
  7. html5比赛策划书,FashionAI 天池竞赛 - Top5 技术方案简汇
  8. MySql字符串与时间日期之间的的转换
  9. matlab freqs函数用法,Matlab freqs 函数
  10. java jsch shell_仅在JSch shell通道中获取特定命令的输出