iis默认网站删除掉了
我把IIS默认网站删了。认网不是站删误删,是除掉故意删的。而且删完才发现,认网这事儿比想象中麻烦。站删
起因很简单。除掉服务器上要跑一个独立应用,认网端口都占好了,站删但IIS默认站点总在80端口上捣乱。除掉我嫌它碍事,认网右键,站删删除,除掉一气呵成。认网系统连个确认弹窗都没有,站删就真没了。除掉当时心里还觉得挺痛快——干净了。
结果第二天,问题就来了。服务器上另一个老项目,本来跑得好好的,突然报错。我查了半天,发现它依赖的是默认站点下的虚拟目录。默认站点没了,虚拟目录跟着一起蒸发。那个老项目的负责人跑过来问我:“你动什么了?”我只好老实交代。他脸都绿了,说这项目三年前部署的,文档早丢了。
更麻烦的是,IIS管理器里有些全局设置,比如MIME类型、默认文档列表,都是挂在“默认网站”这个层级下的。你新建一个站点,这些配置得从头来一遍。我当时没备份,等于把服务器上所有站点的公共配置全扔了。重新配MIME的时候,少加了一个.json的类型,结果前端接口直接返回404。前端同事一脸懵,我一看响应头,就知道是自己埋的雷。
后来我想恢复,发现IIS没有“回收站”功能。网上搜了一圈,有人建议用appcmd导出配置,但那是删之前就该做的事。删了之后,只剩系统备份能救。还好那台服务器有每日快照,我花了一个小时回滚,才把默认站点找回来。但回滚也意味着当天上午的日志全丢了,等于白干半天。
这件事给我的教训很直接:IIS的默认网站不是一个普通站点,它更像一个“容器”。你把它删了,等于把整个服务器的默认行为都拆了。哪怕你压根不用它的内容,它也承担着最基础的请求路由和配置继承功能。删之前,至少做三件事——导出applicationHost.config、截图所有站点绑定、确认没有虚拟目录依赖它。
现在你再问我,我会说:别删,停用都比删强。停用只是不响应请求,配置还在。删了,那就是连根拔起。而且说实话,那个默认站点占用的资源几乎可以忽略不计,留着它,就当给系统留个底。人有时候手痒,总想清理点东西,但服务器这东西,能不动就不动。
我后来在另一台新服务器上特意保留着默认网站,只是把绑定端口改成了8080。需要的时候,还能拿它当跳板测试。你说它有用吧,平时确实用不上。但你说它没用吧,真出事儿的时候,它是唯一能救你的那个默认入口。