Windows Server 2008 R2 IIS重装
背景描述:
在一个刚睡醒午觉后的下午,忽然收到客户反馈,说昨天开始应用特别卡,各种卡各种不好用,忽然想到上次说要优化服务器IIS配置还一直没弄,然后迷迷糊糊的就开始进行客户现场服务器IIS配置优化,涉及到客户服务器IIS根目录 applicationHost文件等的修改。
大概在下午四点多吧,忽然收到客户反馈,说应用无法打开了。赶紧远程访问,500了。进入服务器,看具体的错误,发现是IIS配置文件错误,在具体一看是下午给applicationHost.config配置的一个属性位置放错了。
于是想偷个懒,去本地测试环境找到文件,copy到客户服务器,然后文字copy一下。当时想何必这么麻烦呢,直接copy文件不就行了(绝对是大脑短路了),然后就非常happy的覆盖了文件。
重启各种服务。打开IIS,我勒个去,怎么上面的网站都没了。我勒个去,怎么网站都变成测试服务器上的了。
瞬间有种 “垂死病中惊坐起”的感觉,一下就精神了
问题处理:
- 想采取还原文件的方式,还原一下别覆盖掉的applicationHost.config文件。百度了几种方案,最后选择了一款国内的可以免费试用的软件,还原,扫描C盘,大概花费了一个多小时,给出了4W多份可还原的xml文件,然后费尽眼力,找到了大概可能是丢失的iis配置文件(只提供文件头预览,大概比对下,反正前面是一致的)。然后happy的下一步,下一步,我尼玛,到还原文件的时候它告诉我要先注册,然后就一个链接去某宝了。。。这里我不想说什么,有时候国人做事确实损的不行,通过这种方式让人花钱,即使花了也有种被欺骗的感觉,怎么说呢,就像找了个对象,各种纯情似水,最后发现妈的是原来是小姐。(原谅我不羁的比喻和形容,没想伤害谁,网上看的段子)。另外操蛋的是,用这个东西扫描一遍以后,按照以前的经验,基本别再想用其他的在还原了。。
- 回想了下原来的客户服务器,应该没有什么别的东西,上面就我一个应用,于是找原来的开发人员确认下,确实只有一个网站在上面,新服务器。
- 开始重装IIS服务器
以下是 Windows Server 2008 R2 IIS重装的正文
- 在 服务器管理器下,找到删除角色
- 打开 找到 Web服务器,把选中去掉 ,然后一路【下一步】即可完成操作,重启
- 重启后,会在启动前显示Windows Update什么的。不用管,进入页面后进入服务器管理器,查看角色是不是已经清空即可
- 然后同步骤1图片,选择 添加角色。如果顺利,一直【下一步】即可,最后可能需要重启服务器。
- 在步骤4,我碰到了问题,”Web 服务器(IIS): 安装失败”
悲催的很,一直这个错误,于是我就重复了两遍步骤4,步骤5还是不成,IIS Web安装失败。
- 检查了下其他的也没什么错误,google了下,有说要卸载一个功能的,如图
就是这个功能,需要卸载掉,图是已经卸载完成的。然后重复步骤4,步骤5即可安装成功。
- 安装完毕后,浏览下应用目录,webconfig文件是否正常这里一定要检查一下,因为我的重装完以后多了个web-副本 .config。一位是从前发布的时候自己备份的,然后就一遍一遍的捣鼓401.14,404 aspnet iisreg -i什么的。最后发现是web.config文件里面的内容被删除掉了,用副本覆盖现有文件。终于OK了
总结:
在生产环境操作任何内容,之前千万要备份。不要以为可以万无一失。当发现有各种可挽救的途径都没有做,比如恢复到之前版本(操作系统提供的功能),外部软件恢复文件也不是万能的,像文件覆盖可能很难恢复,而且即使能恢复也要花费很长的时间。最后得到的文件可能存在乱码或其他因素不能用等等。
所以对生产环境,操作之前千万要及时备份
Windows Server 2008 R2 IIS重装的更多相关文章
- c# webapi发布到windows server 2008 r2 iis上提示404错误
项目服务端是一组RestFul风格的webapi,发布到本机的iis没有问题,但是发布到服务器以后就提示404错误.本机是win10的,服务器是windows server 2008 R2 64位.之 ...
- Windows Server 2008 R2 + IIS 环境部署Asp.Net Core App
Windows + IIS 环境部署Asp.Net Core App 环境:Windows Server 2012, IIS 8, Asp.Net Core 1.1. 不少人第一次在IIS中部署A ...
- 部署.net Core 到 Windows server 2008 r2 IIs
1. 将项目发布 2.iis 新建网站,设置 3 安装windows server hosting 4 关于报错 1.下载sdk https://www.microsoft.com/net/lea ...
- windows server 2008 r2 IIS 6 元数据库与IIS 6 配置的兼容性 解决方案
1 菜单-管理工具-服务器管理 2 添加角色服务 3 选中 IIS6 管理兼容性 4 安装完成 5 在IIS上新建一个相应端口的网站 6重新加载项目,OK
- 在 Windows Server 2008 R2 上安装 IIS 7.5
原文 在 Windows Server 2008 R2 上安装 IIS 7.5 默认情况下,Windows Server(R) 2008 R2 上不安装 IIS 7.5.可以使用服务器管理器中的“添加 ...
- 在Windows Server 2008 R2上安装IIS服务
一.Windows Server 2008 R2 介绍 1.Windows Server 2008 R2 基本概念 2.Windows Server 2008 R2 家族系列 二.VMware虚拟机安 ...
- How to Enable TLS 1.2 on Windows Server 2008 R2 and IIS 7.5
Nowadays there is an SSL vulnerability called POODLE discovered by Google team in SSLv3 protocol. So ...
- Windows Server 2008 R2常规安全设置及基本安全策略
这篇文章主要介绍了Windows Web Server 2008 R2服务器简单安全设置,需要的朋友可以参考下 用的腾讯云最早选购的时候悲催的只有Windows Server 2008 R2的系统,原 ...
- Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
http://www.cnblogs.com/zhongweiv/archive/2013/01/07/https.html 配置环境 了解HTTPS 配置CA证书服务器 新建示例网站并发布在IIS ...
随机推荐
- weblogic开机启动脚本
1.在/home/bea/startBeaAll目录内创建一个startBeaAll.sh文件,加入如下内容(把相应目录与命令修改即可,红字部分为修改地方): #!/bin/sh echo " ...
- Dapper simplecrud的使用
为了方便Dapper操作可以使用Dapper的相关扩展dapper simplecrud. 1.首先点击管理NuGet
- ES6 let和const命令
一.let定义变量 { let a = 1;} console.log(a);只在let所在的代码块有效,console的结果是a is not defined,报错. 不存在var的变量提升,即使用 ...
- java集合--Queue用法
队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作.进行插入操作的端称为队尾,进行删除操作的端称为队头.队列中没有元素时,称为空队列. 在队列这 ...
- js post传值
一种是ajax传值,另一种是post传值, ajax传值: $.ajax({ url: "AjaxTxt/Fild.ashx?Name=duibi&dates=" suzk ...
- jQuery中的$.extend方法总结
原文见:jQuery.extend()函数详解 Jquery的扩展方法extend是我们在写插件的过程中常用的方法,但是经常容易搞不清楚以下两个写法的关系: 1.$.extend(dest,src1, ...
- zend framework 初识
1. 请求顺序 : index.php --> Bootstrap.php --> IndexController.php 2. 验证顺序 : Bootstrap.php function ...
- TCP连接状态图
- Backward Digit Sums(POJ 3187)
Backward Digit Sums Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5495 Accepted: 31 ...
- 管理Activity,随时随地控制Activity的销毁工作
public class ActivityManager { public static List<Activity> activityList = new ArrayList<Ac ...