.net core 部署IIS 報(bào)502.5錯(cuò)誤

起因:

前一階段運(yùn)行的好好的.NET CORE 網(wǎng)站(.NET CORE 2.0.6)

突然一次編譯部署后不能運(yùn)行了,網(wǎng)頁報(bào) http error 502.5

過程:

頁面上建議我查看日志。

我感覺是不是這次編譯帶了什么新的庫,而服務(wù)器上老的RUMTIME 庫沒有?

所以先到微軟官網(wǎng)下載了.NET CORE HOSTING BUNDLE 2.1.0 安裝。

安裝好發(fā)現(xiàn)任然報(bào)錯(cuò)。

于是打開WINDOWS日志,查看錯(cuò)誤。發(fā)現(xiàn)IIS 報(bào).NET CORE 啟動(dòng)網(wǎng)站.DLL 失敗。

于是手動(dòng)從CMD里 運(yùn)行 “DOTNET 網(wǎng)站.DLL”

然后報(bào)錯(cuò),終于找到原因了,本地 NET CORE RUNTIME缺少清單里的某個(gè)庫(微軟的一個(gè)INSIGHT什么庫。)

由于這個(gè)項(xiàng)目2個(gè)人做的,可能是別人(或者是我不小心)引用了。網(wǎng)上搜索下這個(gè)庫,發(fā)現(xiàn)這個(gè)庫是用于AZURE部署用的。對于我沒用,所以打算刪了,所以在VS全局搜索。結(jié)果沒搜到,想了想,干脆在服務(wù)器RUMTIME里安裝上這個(gè)庫吧。不過在搜索這個(gè)庫的時(shí)候,發(fā)現(xiàn)了另一個(gè)辦法。因?yàn)槲议_發(fā)調(diào)試的時(shí)候是能夠運(yùn)行的,所以開發(fā)環(huán)境有這個(gè)庫。所以理論上,我只要在打包發(fā)布的時(shí)候,帶上這個(gè)庫不就可以了(因?yàn)榉?wù)器會(huì)變,所以在服務(wù)器上安裝比較煩,重新部署的時(shí)候還要記得安裝這個(gè)東西)。

最終解決方法:

用編輯器,打開項(xiàng)目.csproj。

在PropertyGroup節(jié)點(diǎn)下添加PublishWithAspNetCoreTargetManifest子節(jié)點(diǎn),值為false.

在打包發(fā)布下,就會(huì)發(fā)現(xiàn)對了好多庫文件。復(fù)制到服務(wù)器IIS目錄后,網(wǎng)頁就能正常顯示了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容