背景
在我们做互联网平台项目实施部署时,经常遇到Windows Server xxx版本的服务器,而且一般为了安全,服务器是隔绝外网的。而且很多时候,甲方(或城市大脑、政数局等机构)提供给你的服务器是完全空的,甚至解压软件都没有,更糟糕的是,Windows Server系列系统还不允许你用离线包安装软件各种所需运行环境。假如你强行安装,就会提示你到服务器管理界面去装。但你以为这就解决问题了吗?不,你太年轻了,因为系统里没有安装源,安装必然失败。
解决
使用同版本的Windows Server系统镜像作为安装源即可解决该问题。比如我这里是Windows Server 2012,要安装.NET 3.5
开始还是一样,进入服务器管理,左上角找到“添加角色和功能”,一直下一步,然后到“功能”这一栏中选择.NTE3.5。
然后重点来了,打开事先准备好的Windows Server 2012镜像(不需要激活工具或破解工具),然后找到*source\SxS*文件夹,将SxS整个文件夹拷出来,并放入自己建的source文件夹内(估计是可以不叫source的),接着回到添加角色和功能面板,进入“确认”这一栏,点击下方的“指定备用源路径”,将该路径设为你的SxS文件夹所在的目录,比如C:\source\SxS\。然后点击确认安装。最后.NET3.5就安装成功了。
总结
类似地,其他Windows server版本都可以尝试这样做。