今天有人問如何處理IIS網站出現“Service Unavailable”的情況。
在網上google了一下,導緻這個出錯的原因很多,而“Service Unavailable”這個出錯資訊根本就沒有什麼價值。程式員最痛苦的事,就是程式出錯;程式員最最痛苦的事,就是程式出錯了還沒有錯誤資訊!那如何處理這個問題呢?
首先我們可以到系統日志裡看看出現“Service Unavailable”時系統日志記錄的資訊,這樣可以給我們提供一個比“Service Unavailable”稍稍具體的出錯資訊。一般這個日志内容哦如下:
Application pool 'DefaultAppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool.
但這個出錯日志也沒有提供太多可以操作的出錯資訊,一番google之後,一篇文章進入了我的視野:
A .NET Crash: How not to write a global exception handler這是微軟VS項目組員工寫的部落格,一個标準的女牛人,對windows程式出錯後的Debug研究的入木三分,看完這個文章使我對排除windows應用程式出錯的思路有極大的啟發,原來程式還可以這樣在反編譯的級别進行排錯,對于那些沒有詳細出錯資訊,沒有源代碼的應用程式,這個方法實在是太有用了。
至于具體的排除“Service Unavailable”的方法,就請大家參考這篇文章吧。我寫個日志,以備日後查找。
關于“Service Unavailable”問題,可以參考的網頁:
http://n1.net.cn/FAQ/Help-Detail-348.htm http://www.souzz.net/html/server/Web/71287.html http://nt.discuz.net/showtopic-59880.html http://topic.csdn.net/u/20080808/10/3b9bc37c-ac68-4db5-a5d5-bc6589bae347.html http://www.cnblogs.com/terrylin/archive/2006/12/18/595468.html http://blogs.msdn.com/david.wang/archive/2005/09/23/HOWTO_Diagnose_one_cause_of_503_Service_Unavailable_on_IIS6.aspx http://support.microsoft.com/kb/885654