使用.netcore發佈網站到IIS時遇到的一些問題

今天在將使用.netcore MVC開發的網站部署到IIS上時,遇到以下問題

  1. 1.MVC網站發佈之後沒有View文件夾

沒有View文件夾

  1. 2.網站發佈之後出現500.19錯誤
    不截圖了,錯誤消失了,截不到了。。。

現將解決辦法寫在下面:
對於問題1.MVC網站發佈之後沒有View文件夾
這個需要修改項目的.csproj文件,具體修改方法如下:
用記事本打開項目的.csproj文件,在PropertyGroup節點下面添加

<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>

之後重新生成項目,然後重新發布,就可以看到Views文件夾了
有View文件夾了
對於問題2.網站發佈之後出現500.19錯誤
解決辦法如下:
我們打開網站發佈後的目錄,有個web.config文件,該文件裏面有一句話

<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />

可以看到有個modules屬性的值爲AspNetCoreModule,但是在IIS中的模塊中沒有這個組件,這是導致錯誤出現的原因,
此時需要安裝AspNetCoreModule組件,也就是dotnet-hosting-3.0.0-win,我資源有,但是需要積分,積分不寬裕就不要在這下載了,官網也有,可自行下載
下載完成之後,IIS模塊中會顯示AspNetCoreModule,我這裏安裝的是V2版本,因此顯示名稱是V2
安裝之後顯示
然後修改web.config中的上述代碼段中的modules值爲AspNetCoreModuleV2就行了
至此,重啓網站,500.19錯誤就消失了。
最後,使用.netcore發佈網站時,別忘記將應用程序池的.net CLR版本設置爲無託管代碼
設置爲無託管代碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章