簡體   English   中英

如何將ASP.NET Core 1.0配置為使用本地IIS而不是IIS Express?

[英]How to configure ASP.NET Core 1.0 to use Local IIS instead of IIS Express?

如何在調試時設置.Net Core 1.0項目以使用本地IIS而不是IIS Express

我嘗試以各種方式修改launchSettings.json文件。 例如,用本地IIS替換所有出現的IIS Express ,並更新applicationUrllaunchUrl以使用我的自定義本地主機http://sample.local (我已經更新了主機文件並配置了IIS管理器),但並不滿意。

Properties / launchSettings.json文件的默認設置:

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:38601/",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "SampleApp": {
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "http://localhost:5000",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

當前,在開發過程中,您不能直接使用IIS來承載ASP.NET Core應用程序,因為開發文件夾無法提供IIS需要承載的所有必需文件。 這使得在開發環境中運行ASP.NET Core有點麻煩。

正如Rick Strahl本文中所指出的那樣,嘗試這樣做的理由並不多。 在運行ASP.NET Core應用程序時,IIS幾乎沒有作用-實際上,您的應用程序不再直接在IIS進程中運行,而是在托管Kestrel Web服務器的完全獨立的控制台應用程序中運行。 因此,當您自行托管控制台應用程序時,您實際上在基本上相同的環境中運行。

如果確實需要發布應用程序,則可以使用dotnet命令行或使用Visual Studio工具將其發布到本地文件夾。

例如,如果要發布到C:\\output文件夾,則可以使用以下命令:

dotnet publish
  --framework netcoreapp1.0 
  --output "c:\temp\AlbumViewerWeb" 
  --configuration Release

然后,您可以將IIS站點指向輸出文件夾。 確保將應用程序池CLR版本設置為“ 無托管代碼” ,並且AspNetCoreModule可用。

有關更多詳細信息,請參見https://docs.asp.net/en/latest/publishing/iis.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM