只有累積,沒有奇蹟

2019年3月14日 星期四

[VisualStudio] Unable to connect to web server 'IIS Express'

問題 
今天開發 .NET Core 一半忽然發生整個應用程式 hang 住不動,接著 Visual Studio 自動關閉重新啟動,啟動後心想沒事就開始繼續 Alt+F5 繼續偵錯,過沒多久就跳出提示視窗顯示訊息   "Unable to connect to web server 'IIS" ,接著就啟動跳針模式一直重開 VS & 然後跳出訊息文字,像是寫迴圈沒有加上 return 一樣重複執行,這篇簡單紀錄此問題與可能的解決方案若是有不清楚或是錯誤的地方歡迎討論予糾正

解決方法 
案發現場工具 : Visual Studio 2017 
Framework :  ASP.NET Core 2.2
首先先看一下案發現場的提示文字如下
由於造成此原因有很多種可能,以下就針對這些嘗試的方式各別作介紹與設定
  • 使用 Admin 執行 Visual Studio 
  • 刪除專案 .vs 檔底下 config
  • 修改 Application PortNumber
  • 調整專案SSL 設定
  • 結束 iisexpress.exe 程序
使用 Admin 權限開啟 Visual Studio
在討論中提到有可能是因為權限不足引起,所以最簡單的可以用   run as administrator  執行 Visual Studio 應用程式,如下圖所示
刪除專案 .vs 檔底下 config
在每個專案檔底下都有  隱藏資料夾 .vs ,存放一些 application 的設定檔案,如果設定檔錯誤有可能會造成 VS 執行時異常,設定檔位置在 application folder > .vs > config > applicationhost.config 
處理流程如下
1. 先關閉 Visual Studio 應用程式
2. 接著刪除  application folder > .vs > config > applicationhost.config   設定檔案資料
3. 重新啟動 Visual Studio

修改 port number
也可能是因為使用的 Port 號跟其他重複造成異常,因此可以嘗試修改 port number,到專案按右鍵 > 屬性 

修改 SSL 設定
調整 SSL 設定,步驟如下 
1. 勾選 SSL 設定,此時會產生 SSL 的 URL 與 Port Number
2. 在選取右邊的 COPY 複製 URL
3. 貼上上面的輸入框中

結束 iisexpress.exe
啟動大絕招直接砍掉 iisexpress process,指令如下
taskkill /im iisexpress.exe /f
taskkill /im dotnet.exe /f

心得
前面幾種方式都與我專案設定相同,因此對我來說幫助不大,直到嘗試到最後砍掉 iisexpress.exe process之後,才算解決這詭異的問題,不過怕每個人設定方式不同因此還是保留前面確認的方法,希望對有遇到類似問題的人也可以有幫助,謝謝

參考
unable to connect to web server 'IIS Express'

0 意見:

張貼留言

Copyright © m@rcus 學習筆記 | Powered by Blogger

Design by Anders Noren | Blogger Theme by NewBloggerThemes.com