今天遇到一个问题,拉了同事修改的新代码编译之后,突然整个网站都跑不起来了,debug网站发现连application_start都没有进,页面上只有0x000000,没有其他的任何报错。最奇怪的是其他机器都能正常运行,又是清理缓存,重新拉代码,重启的,乱来一气,无果。
最后是组内大佬,把web.config中的<httpErrors>自定义错误处理关了才在页面上发现了错误提示,需要先删除 app_offline.htm这个问题,否则网站始终处于下线状态。删了该文件之后,果然立马就正常了。问了为什么会有这个文件,答复道:iis运行期间发生错误或者异常是,处于保护机制,会生成这个下线文件。
我下来google了下这个文件发现大家都在吐槽这个东西,但是没有找到一个明确的解释,大体得出了两个结论:1.这个文件是vs生成的,单独用iis run程序是不会生成这个东西的。2.连接数据库,有线程还是连接实例不对应会造成该错误。
总之呢,还是有学到的地方,比如大佬查问题会不只在代码级别。有几个方向可以学习:
1.看windows的event viewer,是不是系统级别错误。
2.查iis配置之类的。
网友评论