基于ABP架構開發(fā)的.Net Core項目部署到IIS問題匯總
在ABP官網創(chuàng)建一個.Net Core項目編譯完成
1、 發(fā)布網站



2、 IIS新建站點
目錄指向發(fā)布的目錄

3、安裝WindowsHosting
IIS安裝服務器上安裝DotNetCore.X.X.X-WindowsHosting安裝成功后重啟IIS服務器。根據版本選擇下載
下載地址:https://www.microsoft.com/net/download/windows

如果沒有安裝SDK 需要安裝.Net Core SDK
4、 修改application pool應用程序池 選擇無托管代碼

5、 瀏覽程序
報錯如下:
An error occurred while starting the application.
看不到詳細信息需要修改web.config 查看詳細信息 將stdoutLogEnabled的修改為 true,并在應用程序根目錄添加 logs 文件夾
<aspNetCore processPath="dotnet" arguments=".\tzky.saas.Web.Host.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" />
再瀏覽網站,當然還是報錯,現(xiàn)在到logs目錄查看報錯詳細信息
錯誤信息:用戶 'IIS APPPOOL\saasapp' 登錄失敗

6、錯誤診斷與解決
錯誤分析很顯然是應用程序權限問題,只要到application pool應用池-> 高級 -> 標識 將原來ApplicationPoolIdentity改為對數(shù)據庫有訪問權限和網站文件有讀寫權限的Windows用戶(這里需要確定這個Windows用戶可以登錄數(shù)據庫,不行可以在數(shù)據庫安全設置添加。當然你也可以將數(shù)據庫連接字符竄改為數(shù)據庫用戶和密碼訪問,比如:sa),然后重啟應用池,重啟網站瀏覽


啟動運行成功

7、總結
.Net Core 和 傳統(tǒng)的.Net 程序IIS部署主要注意以下幾點:
安裝DotNetCore.X.X.X-WindowsHosting和.Net Core SDK應用池配置為無托管代碼(網上解釋:ASP.NET Core不再是由IIS工作進程(w3wp.exe)托管,而是使用自托管Web服務器(Kestrel)運行,IIS則是作為反向代理的角色轉發(fā)請求到Kestrel不同端口的ASP.NET Core程序中,隨后就將接收到的請求推送至中間件管道中去,處理完你的請求和相關業(yè)務邏輯之后再將HTTP響應數(shù)據重新回寫到IIS中,最終轉達到不同的客戶端(瀏覽器,APP,客戶端等)。而配置文件和過程都會由些許調整,中間最重要的角色便是AspNetCoreModule,它是其中一個的IIS模塊,請求進入到IIS之后便立即由它轉發(fā),并迅速重定向到ASP.NET Core項目中,所以這時候我們無需設置應用程序池來托管我們的代碼,它只負責轉發(fā)請求而已)如果需要讀寫根目錄權限,要更改應用池 ApplicationPoolIdentity網站報錯,通過修改web.config 啟用錯誤日志查看詳細錯誤信息
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
.NET?Core配置連接字符串和獲取數(shù)據庫上下文實例
這篇文章介紹了.NET?Core配置連接字符串和獲取數(shù)據庫上下文實例的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-01-01
.NET 9 中的 多級緩存 HybridCache示例詳解
HybridCache是.NET9中引入的一種新的緩存模型,它封裝了本地緩存和分布式緩存,簡化了緩存操作并提供了標簽刪除和約束選項,本文給大家介紹.NET 9 中的 多級緩存 HybridCache,感興趣的朋友一起看看吧2024-12-12
GridView控件實現(xiàn)數(shù)據的顯示和刪除(第8節(jié))
這篇文章主要介紹了GridView控件實現(xiàn)數(shù)據的顯示和刪除,以新聞網站為例,實現(xiàn)對新聞數(shù)據的操作,了解各種數(shù)據源控件與數(shù)據綁定控件的類型和作用,需要的朋友可以參考下2015-08-08
ASP.NET Core3.1 Ocelot路由的實現(xiàn)
這篇文章主要介紹了ASP.NET Core3.1 Ocelot路由的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11

