背景描述:

在一个刚睡醒午觉后的下午,忽然收到客户反馈,说昨天开始应用特别卡,各种卡各种不好用,忽然想到上次说要优化服务器IIS配置还一直没弄,然后迷迷糊糊的就开始进行客户现场服务器IIS配置优化,涉及到客户服务器IIS根目录 applicationHost文件等的修改。

大概在下午四点多吧,忽然收到客户反馈,说应用无法打开了。赶紧远程访问,500了。进入服务器,看具体的错误,发现是IIS配置文件错误,在具体一看是下午给applicationHost.config配置的一个属性位置放错了。

于是想偷个懒,去本地测试环境找到文件,copy到客户服务器,然后文字copy一下。当时想何必这么麻烦呢,直接copy文件不就行了(绝对是大脑短路了),然后就非常happy的覆盖了文件。

重启各种服务。打开IIS,我勒个去,怎么上面的网站都没了。我勒个去,怎么网站都变成测试服务器上的了。

瞬间有种 “垂死病中惊坐起”的感觉,一下就精神了

问题处理:

  1. 想采取还原文件的方式,还原一下别覆盖掉的applicationHost.config文件。百度了几种方案,最后选择了一款国内的可以免费试用的软件,还原,扫描C盘,大概花费了一个多小时,给出了4W多份可还原的xml文件,然后费尽眼力,找到了大概可能是丢失的iis配置文件(只提供文件头预览,大概比对下,反正前面是一致的)。然后happy的下一步,下一步,我尼玛,到还原文件的时候它告诉我要先注册,然后就一个链接去某宝了。。。这里我不想说什么,有时候国人做事确实损的不行,通过这种方式让人花钱,即使花了也有种被欺骗的感觉,怎么说呢,就像找了个对象,各种纯情似水,最后发现妈的是原来是小姐。(原谅我不羁的比喻和形容,没想伤害谁,网上看的段子)。另外操蛋的是,用这个东西扫描一遍以后,按照以前的经验,基本别再想用其他的在还原了。。
  2. 回想了下原来的客户服务器,应该没有什么别的东西,上面就我一个应用,于是找原来的开发人员确认下,确实只有一个网站在上面,新服务器。
  3. 开始重装IIS服务器

以下是 Windows Server 2008 R2 IIS重装的正文

  1. 在 服务器管理器下,找到删除角色                                                                                                                                                                      
  2. 打开 找到 Web服务器,把选中去掉 ,然后一路【下一步】即可完成操作,重启                                                                                                                    
  3. 重启后,会在启动前显示Windows Update什么的。不用管,进入页面后进入服务器管理器,查看角色是不是已经清空即可
  4. 然后同步骤1图片,选择 添加角色。如果顺利,一直【下一步】即可,最后可能需要重启服务器。
  5. 在步骤4,我碰到了问题,”Web 服务器(IIS): 安装失败”                                                                                                                                           悲催的很,一直这个错误,于是我就重复了两遍步骤4,步骤5还是不成,IIS Web安装失败。
  6. 检查了下其他的也没什么错误,google了下,有说要卸载一个功能的,如图                                                                                                                 就是这个功能,需要卸载掉,图是已经卸载完成的。然后重复步骤4,步骤5即可安装成功。
  7. 安装完毕后,浏览下应用目录,webconfig文件是否正常这里一定要检查一下,因为我的重装完以后多了个web-副本 .config。一位是从前发布的时候自己备份的,然后就一遍一遍的捣鼓401.14,404 aspnet iisreg -i什么的。最后发现是web.config文件里面的内容被删除掉了,用副本覆盖现有文件。终于OK了

总结:

在生产环境操作任何内容,之前千万要备份。不要以为可以万无一失。当发现有各种可挽救的途径都没有做,比如恢复到之前版本(操作系统提供的功能),外部软件恢复文件也不是万能的,像文件覆盖可能很难恢复,而且即使能恢复也要花费很长的时间。最后得到的文件可能存在乱码或其他因素不能用等等。

所以对生产环境,操作之前千万要及时备份

Windows Server 2008 R2 IIS重装的更多相关文章

  1. c# webapi发布到windows server 2008 r2 iis上提示404错误

    项目服务端是一组RestFul风格的webapi,发布到本机的iis没有问题,但是发布到服务器以后就提示404错误.本机是win10的,服务器是windows server 2008 R2 64位.之 ...

  2. 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 ...

  3. 部署.net Core 到 Windows server 2008 r2 IIs

    1. 将项目发布 2.iis 新建网站,设置 3 安装windows  server  hosting 4 关于报错 1.下载sdk https://www.microsoft.com/net/lea ...

  4. windows server 2008 r2 IIS 6 元数据库与IIS 6 配置的兼容性 解决方案

    1 菜单-管理工具-服务器管理 2 添加角色服务 3 选中 IIS6 管理兼容性 4 安装完成 5 在IIS上新建一个相应端口的网站 6重新加载项目,OK

  5. 在 Windows Server 2008 R2 上安装 IIS 7.5

    原文 在 Windows Server 2008 R2 上安装 IIS 7.5 默认情况下,Windows Server(R) 2008 R2 上不安装 IIS 7.5.可以使用服务器管理器中的“添加 ...

  6. 在Windows Server 2008 R2上安装IIS服务

    一.Windows Server 2008 R2 介绍 1.Windows Server 2008 R2 基本概念 2.Windows Server 2008 R2 家族系列 二.VMware虚拟机安 ...

  7. 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 ...

  8. Windows Server 2008 R2常规安全设置及基本安全策略

    这篇文章主要介绍了Windows Web Server 2008 R2服务器简单安全设置,需要的朋友可以参考下 用的腾讯云最早选购的时候悲催的只有Windows Server 2008 R2的系统,原 ...

  9. Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站

    http://www.cnblogs.com/zhongweiv/archive/2013/01/07/https.html 配置环境 了解HTTPS 配置CA证书服务器 新建示例网站并发布在IIS ...

随机推荐

  1. asp.net同时调用JS和后台的无效的解决

    如果js是个定时器,那么就不走后台 <asp:Button runat="server" type="button" Text="重新发送邮件& ...

  2. Android Service(下)

    转载请注册出处:http://blog.csdn.net/guolin_blog/article/details/9797169 在上一篇文章中,我们学习了Android Service相关的许多重要 ...

  3. IOS 中关于自定义Cell 上的按钮 开关等点击事件的实现方法(代理)

    1.在自定义的Cell .h文件中写出代理,写出代理方法. @protocol selectButtonDelegate <NSObject> -(void)selectModelID:( ...

  4. 反引号backtick中输入多个命令

    如果在反引号backtick中输入多个命令会怎样?比如有如下脚本: #!/bin/bash var=`date;who` echo $var 运行该脚本,会发现输出的是命令date和who的集合,只是 ...

  5. PHP APC缓存配置、使用详解

    一.APC缓存简介 APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”.它为我们提供了缓存和优化PHP的中间代码的框架. APC的缓存分两部分:系统缓存和用户数据缓 ...

  6. css布局学习笔记之max-width

    设置块级元素的 width 可以阻止它从左到右撑满容器.然后你就可以设置左右外边距为 auto 来使其水平居中.元素会占据你所指定的宽度,然后剩余的宽度会一分为二成为左右外边距. div{ width ...

  7. ZendFramework2 源码分析 init_autoloader.php

    // Composer autoloading if (file_exists('vendor/autoload.php')) { // 加载自动加载器 $loader = include 'vend ...

  8. More is better(hdu 1856 计算并查集集合中元素个数最多的集合)

    More is better Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 327680/102400 K (Java/Others) ...

  9. php设置和获取变量类型

    1. 获取变量类型 gettype($a); 2. 设置变量类型 settype($a,'int'); 3. 测试函数 is_array();是否数组 is_string();是否字符串 is_obj ...

  10. Android jar包混淆

    具体可参考http://proguard.sourceforge.net/manual/examples.html#library 1.找到android的adt目录下的 D:\soft\adt-bu ...