配置IIS
Windows Server上通過“添加角色和功能”,桌面Windows上通過“啟用和關閉Windows功能”來安裝和配置IIS。確保勾選Web服務和“IIS 管理控制台”:
Windows Server IIS 安裝配置
桌面Windows IIS 安裝配置
5. 安裝.NET Core Windows Server Hosting程序集
安裝.NET Core Windows Server Hosting程序集,讓IIS具備反向代理功能。該程序集包含了.Net Core運行時(Runtime),.Net Core 類庫(Library)和 Asp.Net Core Module。其中Asp.Net Core Module負責反向代理工作。
特別注意,按微軟官方說法,如果是脫機安裝,則需先手動安裝Microsoft Visual C++ 2015 Redistributable。但實踐證明即使在線安裝很多時候也不會自動安裝 Microsoft Visual C++ 2015 Redistributable,因此強烈建議手動安裝Microsoft Visual C++ 2015 Redistributabl。
另外,目前.NET Core版本升級很快,請下載最新版本的.NET Core Windows Server Hosting,確保服務器上的.Net Core版本不低於部署的Asp.Net Core App版本。
下載 Microsoft Visual C++ 2015 Redistributable
下載最新版本.NET Core Windows Server Hosting
安裝完成重啟系統或重啟IIS服務即可。
6. IIS中配置Asp.Net Core App
接下來的步驟與部署傳統網站基本一致,但也有稍許不同,請留意。
1) 服務器中創建目錄存放發布以后的App程序文件,確保App的web.config文件在網站根目錄下。
2) 在網站根目錄創建一個logs文件夾。如果你開啟了某些日志服務,日志文件將記錄在這里。當然也可以不記錄日志,但初次部署對排錯有幫助,建議創建。
web.config 中開啟 stdoutLogEnabled="true"
<aspNetCore processPath="dotnet" arguments=".\Web.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
3) 在IIS管理器中添加網站。步驟與一般網站配置一致:
4) 配置應用程序池。在左側導航欄選擇“應用程序池”,選擇指定程序池,右鍵菜單,選擇“基本設置”,將.Net CLR版本設置為“無托管代碼”。
Program.cs中添加
.UseUrls("http://*:5000", "https://*:5001");
如
public static IWebHostBuilder CreateWebHostBuilder(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup<Startup>().UseUrls("http://*:5000", "https://*:5001");
這樣外網才能訪問。。。。