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 ...
随机推荐
- [canvas]通过动态生成像素点做绚丽效果
本例中的粒子就是实实在在的像素,由js代码在canvas上动态生成的像素点!这些像素点通过一个运动方法有规律地动了起来.透过这个思路,我们可以想到很多很炫的效果,但是这个性能有待考察.实验证明,动态控 ...
- 数学期望和概率DP题目泛做(为了对应AD的课件)
题1: Uva 1636 Headshot 题目大意: 给出一个000111序列,注意实际上是环状的.问是0出现的概率大,还是当前是0,下一个还是0的概率大. 问题比较简单,注意比较大小: A/C & ...
- poj3159 Candies(差分约束)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud Candies Time Limit: 1500MS Memory Limit ...
- theos初探:ios越狱开发教程
开发环境搭建回顾 现在已经在windows上安装好了theos了.在上一篇中都已经讲了,开发环境主要部件就是: 1.theos,主要包含了使用make时的makefile模板文件.包含了各种库和框架的 ...
- IOS开发UI篇-NavigationController的控制器之间的跳转
一.效果图如下 1> 第一个控制器的NavigationBar隐藏 2> 有按钮,可以跳转到下一个控制器,返回上一个控制器或者根控制器 二.思路代码 思路: 1> 设置window的 ...
- jQuery中$符号冲突问题 (转载)
Jquery的$命名冲突: 在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法.然而,当我们引入多 ...
- BZOJ 1458 士兵占领
http://www.lydsy.com/JudgeOnline/problem.php?id=1458 题意:n x m的棋盘,k个位置不能放,每行和每列都有要求至少的士兵,求能否有最少的满足条件的 ...
- CSS之Hack
一.类内部Hack IE都能识别*;标准浏览器(如FF)不能识别*:IE6能识别*,但不能识别 !important, IE7能识别*,也能识别!important; FF不能识别*,但能识别!imp ...
- Android studio修改debug.keystore
在android studio项目中配置自定义的debug keystore 方法/步骤 在项目的build.gradle中添加如下内容: android { signingConfigs ...
- 遇到的Fragment中使用setAdapter()设置ListView报空指针解决方案
场景是这样,底部4个tab导航栏.用的fragment. 但其中一个fragmentActivity1中使用ListVIew的setAdapter()方法时,总是报NullPointerExcepti ...