IISCookies失效故障的解決過程
IISCookies失效故障的失效解決過程
閱讀次數:177 次 來源:admin 發布時間:Web服務器發生了硬件故障,修好后將Web站點遷回到服務器上,故障很快所有網站都能正常訪問了。決過這時發現有兩個網站,失效打開后需要輸入用戶名和密碼進行登錄,故障但輸入用戶名和密碼后登錄失敗。決過在服務器上打開網站登錄,失效提示禁用了Cookies,故障在客戶端上打開網站登錄,決過點擊確定按鈕后沒有任何提示。失效檢查了一下沒能發現問題,故障于是決過開始深入排查故障。
先說一下服務器環境:Windows Server 2003 Enterprise、失效IIS 6、故障ASP.NET 2.0。決過在服務器上登錄,提示無法寫入Cookies,因此首先考慮的是瀏覽器的權限問題。將IE的安全性調到最低,還是無法登陸,可以確定不是Cookies設置的問題。在客戶端上登錄,則沒有任何提示。根據程序的處理流程判斷,在客戶端登錄時,瀏覽器沒有將驗證信息寫入Cookie,造成登陸后缺乏驗證信息而跳回登陸頁面,給人造成的感覺是點擊登陸后沒有反應。
用Firefox訪問網站,竟然能成功登錄,但IE卻不能登錄,這時初步判斷是IE無法存儲Cookies造成的這個故障。換了好幾臺電腦,IE均無法登陸,因此懷疑是由于IIS的設置造成了IE無法存儲Cookie,繼續排查。
設置Web站點讀寫權限、關閉其它軟件、停止殺毒軟件、重建Web站點、還原IIS設置,各種方法都用過了,還是無法解決故障。網上搜索IIS設置影響IE瀏覽器的資料,也沒能找到。然后打開備份系統的站點,卻能夠正常登錄,更加確定了是IIS的問題,但如何繼續排查,卻沒有頭緒了。
看著服務器上的時間,已經凌晨2點多了,心里開始有點沒底了,考慮是不是要把系統切到備份環境去,不然一會天亮了再切換就來不及了。但還是希望能解決掉這個故障,不啟用備份系統。這樣又研究了一段時間,再一看表,發現時間還不到1點。心里挺納悶,以為剛才看錯點了,看了看手機,發現確實不到1點。然后再看服務器,時間是2點多,這才發現因為服務器更換硬件,BIOS時間被清空了,現在服務器上的時間要比標準時間晚半年。這下徹底明白了故障所在,因為Web站點的登錄Cookie設置的失效時間是半小時,服務器的時間晚了這么久,客戶端一登錄,Cookie馬上就會過期,因此不管怎么等也無法存儲Cookie,自然登不上去了。將服務器時間改正確后,登陸成功,故障順利解決。