Asp.Net Core--發佈到IIS

翻譯以下:

 

支持的操做系統

  Windows 7及更高版本html

  Windows Server 2008 R2及更高版本web

  概念上,本文檔中描述的IIS配置也適用於在Nano Server IIS上託管ASP.NET Core應用程序,可是請參閱Nano Server上的ASP.NET Core 以獲取特定說明。瀏覽器

IIS配置

  啓用Web服務器(IIS)服務器角色並創建角色服務。服務器

   Windows桌面操做系統:

  導航到:控制面板>程序>程序和功能>打開或關閉Windows功能(屏幕左側), 打開Internet信息服務和Web管理工具組。 選中IIS Management Console 的框。 選中World Wide Web Services的框。 接受World Wide Web Services 的默認功能或自定義IIS功能 以知足您的須要。app

  Windows Server操做系統:

   對於服務器操做系統,請經過管理菜單或服務器管理器中的連接使用添加角色和功能嚮導。 在服務器角色步驟中,選中Web服務器(IIS)的框。 asp.net

  在「角色服務」步驟上,選擇所需的IIS角色服務或接受所提供的默認角色服務。ide

  

 

  繼續執行確認步驟以啓用Web服務器角色和服務。工具

 

安裝.NET核心Windows Server主機包ui

在服務器上安裝.NET Core Windows Server Hosting軟件包。該包將安裝.NET核心運行時,.NET核心庫和ASP.NET核心模塊。該模塊在IIS和Kestrel服務器之間建立反向代理。
從新啓動服務器或執行net stop was / y,而後從命令行啓動net start w3svc,以檢索對系統PATH的更改。
有關ASP.NET核心模塊的更多信息,包括模塊的配置和使用web.config設置環境變量,使用app_offline.htm掛起請求處理和激活模塊日誌記錄,請參閱ASP.NET核心模塊配置參考。spa

應用程序配置

啓用IISIntegration組件
在應用程序依賴項中包含對Microsoft.AspNetCore.Server.IISIntegration軟件包的依賴項。經過將.UseIISIntegration()擴展方法添加到WebHostBuilder(),將IIS集成中間件合併到應用程序中。

 

var host = new WebHostBuilder()
  .UseKestrel()
  .UseContentRoot(Directory.GetCurrentDirectory())
  .UseIISIntegration()
  .UseStartup<Startup>()
  .Build();

  

請注意,調用.UseIISIntegration()的代碼不會影響代碼的可移植性。

爲IISIntegration服務設置IISOptions
要配置IISIntegration服務選項,請在ConfigureServices中包含IISOptions的服務配置。

services.Configure<IISOptions>(options => {
  ...
});

  

常見錯誤

  如下不是完整的錯誤列表。 若是您遇到此處未列出的錯誤,請在下面的DISQUS部分留下詳細的錯誤消息(單擊顯示註釋以打開DISQUS面板)。

 

  要診斷IIS部署的問題,請研究瀏覽器輸出,經過事件查看器檢查服務器的應用程序日誌,並啓用模塊日誌記錄。 ASP.NET Core模塊日誌將在web.config中<aspNetCore>元素的stdoutLogFile屬性中提供的路徑上找到。 屬性值中提供的路徑上的任何文件夾必須在部署中存在。 您還必須設置stdoutLogEnabled =「true」以啓用模塊日誌記錄。 使用publish-iis工具建立web.config文件的應用程序將默認stdoutLogEnabled設置爲false,所以必須手動提供文件或修改文件以啓用模塊日誌記錄。

相關文章
相關標籤/搜索