我有一個從MVC數據庫獲取數據的.NET MVC項目。使用SQL數據庫對IIS web軟件包進行故障排除
當我在本地機器上以調試模式運行項目時,它運行時沒有錯誤;然而,在使用Microsoft的Publish Wizard(創建一個.zip,將該.zip移動到網站所指向的wwwRoot文件夾)將項目部署到我的IIS服務器(我相信是版本6)之後,我遇到了一個問題:我訪問網站的主頁通過URL地址,但是當我輸入登錄ID時,它會產生一個內置的錯誤消息「無效的用戶ID」。
輸入有效的ID時唯一發生此錯誤的時間是數據庫無法到達以檢查登錄憑證。因此,使用SQL Profiler,我試着查看是否對數據庫進行了查詢 - 看起來答案是「否」。
我已驗證在IIS環境中正確配置了連接字符串,並且可以安全地假定這個問題沒有與代碼相關的錯誤。
的問題:還有什麼其他的故障排除方法可用於IIS和SQL互動,看看這個錯誤的根源是,或者你可能有什麼樣的建議,試圖消除這一問題
IIS服務器上的應用程序事件。防火牆是否打開?他們在同一個域名? IIS服務器實際上可以'看''sql server嗎?此外,您可能需要記錄失敗/成功的登錄嘗試。默認情況下,SQL Server不記錄失敗的嘗試。 – WickedFan
IIS服務器上的事件日誌(與託管SQL服務器的機器相同)提供了一條錯誤消息:「用戶'IIS APPPOOL \ OPOC'登錄失敗。原因:無法打開明確指定的數據庫」。我確定它們在同一個域中,因爲這個IIS服務器已經運行了一段時間的這個項目的測試環境。無論是否可以看到SQL服務器,我不確定如何確認,但是我曾假設如此,因爲在我對部分視圖進行了一些更改之後重新部署了應用程序之前,它已經工作了。 –
我檢查了安全文件夾爲SQL服務器,並且已將APPPOOL \ OPOC添加到登錄列表中,所以我不認爲我使用的AppPool是問題所在,但我完全不熟悉IIS部署,所以或多或少,所以我可能是錯的 –