HTTP Error 503. The service is unavailable iis10 因为系统更新或者其他误操作导致的错误终极解决
今天在弄本地windows服务器,线上有已经配置好的iis服务器,记得以前iis6的时候可以复制本机配置到别的机器,就想着能不能把服务器上的配置复制过来。结果找了半天没找到,只找个共享配置,于是乎手贱的就导出了配置,试着在本机导入了下,结果悲剧了,所有已有配置的网站都被清洗了,只有服务器上的网站。访问下结果报错HTTP Error 503. The service is unavailable。
HTTP Error 503. The service is unavailable iis10 因为系统更新或者其他误操作导致的错误终极解决
今天在弄本地windows服务器,线上有已经配置好的iis服务器,记得以前iis6的时候可以复制本机配置到别的机器,就想着能不能把服务器上的配置复制过来。结果找了半天没找到,只找个共享配置,于是乎手贱的就导出了配置,试着在本机导入了下,结果悲剧了,所有已有配置的网站都被清洗了,只有服务器上的网站。访问下结果报错HTTP Error 503. The service is unavailable。 也就开始了今天的HTTP Error 503. The service is unavailable错误折腾旅程。
1、百度看看,HTTP Error 503. The service is unavailable.
原文在这https://blog.csdn.net/veloi/article/details/83509203
找到一中问题会导致,
原因:访问页面时,应用程序池就自动关闭了。
方案:在应用程序池上--右键--高级设置--进程模型--标识,更改了这项里的“内置账户”。
将原有的“ApplicationPoolIdentity”更改为“NetworkService”。
然后重启下应用池,所有网站浏览一切都OK了。
原以为可以结果,很遗憾,操作后问题依旧,仍然无法访问报错。不过有一点它说对了,所在的应用程序池关闭了,重启无效。通过查看日志发现报错,rewrite组件错误。可以肯定是导入的配置文件出问题了,遗憾的是导入前忘记备份了。
画重点动系统配置前记得备份,iis配置文件路径C:\Windows\System32\inetsrv\config,有需要整个inetsrv都备份下,血的教训
不过能够看到这个朋友,估计都没有备份,下面继续看解决办法。
2、导入其他相同配置的系统的iis源文件和配置
(在这里提示下,如果有原来的配置文件或者相同配置的inetsrv文件,直接把congfig的三个文件拷贝过来,不过我已经把服务器的inetsrv文件覆盖本地了,原win10的依旧没有备份,如果直接拷贝win10的正确的config文件,应该是可以恢复的)
由于资源有限,第一个想到的是,既然原本老得配置文件找不到了,那就把服务器上的inetsrv都拷贝下来替换试试。结果一番折腾启动显示,登录显示凭证有误,哎忽略了windows注册表,还是无果。
3、卸载重装iis
没办法只能试着卸载重装,结果卸载了多次卸载不掉,应该是拷贝的文件有问题,都是config没有备份惹的祸,得想办法获取到正确的config。还好家里有一台win10,于是乎把电脑上的inetsrv拷贝过来覆盖进去。卸载可以了,不过在卸载的完后看inetsrv目录居然还有文件存在。于是开始了反复的删除,卸载,覆盖,重装iis,折腾了半天,iis是装上了,不过点开运行iis添加网站一直提示找不到,
无法识别的元素 hsts
这是个什么鬼???
想来想去,发现这个过程中有一个点被忽略了,inetsrv每次卸载一直有遗留文件,既然是卸载,iis卸载程序可以自动清理文件,那就是卸载不完全导致的。
想到这,立马把之前win10拷贝过来的文件覆盖了进去,重新卸载,这次狠点,把iis全部组件和。net全部卸载重新安装。
这回卸载完,查看intesrv,干净了里面空了,顽固的文件也消失了。看到曙光了。赶紧重启,然后重新安装iis。一路等待后,iis装好了,启动,访问localhsot,终于见到了熟悉的iis示例页面。没有报错。看似一片大好,赶紧配置好自己的一个.net应用,启动,通过edge访问,shit!
这个是又是什么鬼东西。(这里备注下,其实iis和网站都有可能已经正常了,这个是edge的问题,不能访问本地的host解析导致的)。
4、卸载最近安装的windows更新
这个只做说明,还有一中倒是iis服务down掉的原因就是某些windows更新,所以在服务更新中卸载最近的更新也是可能是一种有效的解决办法
不过我这次的问题不是这个导致的,生产服务器建议禁用自动更新,在维护时有选择的手动更新,做好响应的备份和回滚准备。
完全蒙了。没办法,只能使出最后的杀手锏了。
5、windows系统恢复,重新安装iis
如果完全卸载重装还没有解决问题,那就只能全面恢复初始状态,重新来过了,太技术性的敲命令行修复,只在电影里见过,本人不会。在10几年前要恢复,一般是通过gost或者安装光盘,重新安装系统。现在多了一个选择,win10有类似手机的恢复出厂设置的东西,可以借用下,不用重装系统了。
右键开始菜单,点开设置
点更新和安全,看上上面有个恢复和备份了吗,用的就是这个东西。

保留自己的文件,因为我们不是中毒,只想恢复程序类的系统文件,所以这个就够用了,下面就等着系统重新来过了。
喝杯茶
系统重装后,跟获了新生似的,一路安装iis一切正常,localhost正常,等配置好自己的程序,访问,shit ,依然
呵呵了吧,想死的心!!!别慌,偶然看到自己的mac上打开的admin应用可以访问了。哈哈!我mac设置的是访问这台win10的iis。我嘞个去,什么情况。赶紧用win10的ie浏览器打开一看,admin已经生龙活虎的跑在那了。好吧,然后又下载了谷歌和火狐的浏览器访问admin,一切正常!
至此,服务iis被共享的config搞掉的问题才最终得以解决。从现在回想来看,应该iis完全卸载重装后,就已经恢复正常了,结果又遇到了edge这个拦路虎,多做了一个windows恢复,好在最后都恢复了。还好这是在自己的win10开发机上。
最后有几点警示:
1、在需要通过拷贝来覆盖配置的时候,一定要备份原有配置,免得出问题
2、在生产服务器慎用配置通过,一定要经过备份系统测试后在实施,多演练几次,确保安全
3、尽量使用程序自身存在的卸载程序完成操作,减少直接删除或者覆盖文件的操作干预系统程序,否则可能会有意想不到的问题
4、开发尽量不用edge
最后留个尾巴,edge访问本地host解析依然无法访问,这个问题有的说是本地intranet访问限制导致的
原文:https://newsn.net/say/edge-host.html

我修改了还是不能正常访问。
不再纠结了,套用一句话:edge浏览器,注定是个失败的浏览器,因为实在是太难用了。哈~ 。
更多推荐


所有评论(0)