.NetCore項目在IIS中突然就“無法正常運作”了


前言

  事情是這樣的,正直愚人節2020/04/01當天,前端同事突然反饋,調試環境接口調用不了了,剛來上班還是通的(感覺是不是被愚了),然后給我接了個圖:

 

 

開始搞事

  Round 1.

  一看圖就開始自信的去找跨域配置那,忽略了圈起來的500報錯(NO,NO,NO,不是這樣,應該是以為500是緊跟下面的跨域策略引起的);

  看了一遍配置,配置正確,沒毛病,想着是不是調試環境有問題,然后本機嘗試了一下,沒問題,於是將本機最新代碼發布到調試調試環境,哦豁,還是不行;

  顯然,第一回合慘敗;

  Round 2.

  於是乎我嘗試ping 了前端同事IP,沒有ping通,懷疑網絡問題,那是因為他的IP有點奇怪,電腦IP都是公司統一分配的,我入職幾年了,見到過同事電腦的IP都是192.168.xxx.xxx,然而這個剛入職一周同事的IP是172開頭, 沒有ping通,初步估計是網絡問題,但一想有可能是他防火牆限制我ping,不代表網絡不通,於是讓他ping我, 擦,通的;  然后我訪問他本機上項目,我去能訪問;

  顯然,第二回合慘敗;

  Round 3.

  然后就去測試環境訪問,一輸入地址,擦,報了無情的500; (剛開始沒去測環境,那是之前正常,本機也很正常,所以很自信的忽略了, 反面參考,有問題先從問題發生環境排查;)

  

 

   查看了IIS日志和Windows日志,沒有異常信息,請求都是Sucessfully,然后找度娘和必應,有的說是路徑配置不對,或者參數問題,一想,茫茫API,這么多,怎么找,不太現實,果斷開啟日志:

 

   果然,日志出來,很顯然的錯誤, 找不到項目中swagger注釋需要的xml文件,如下配置的文件:

 

   一回想,加注釋這個的確是最后加的,在配置swagger的時候用到這個文件了,本地能找到沒問題,但發布的時候,此文件沒發布到的對應文件夾中,最后將文件生成對應文件中,問題解決;

總結

  排查問題要從根源走起,不知道錯誤原因,首先去找日志,IIS日志、Windows日志、 或者上文中提到的開啟日志,  有日志就好分析錯誤原因;  所以不要像我”亂搞”一通;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM