2
  1. 如果我从 project.json 中删除 Kestrel 依赖项,我的 Web 应用程序将无法启动。这是否意味着 ASP.NET 5 依赖于 Kestrel?它是 IIS 的替代品吗?

  2. DNX 是 .NET Core 和具有 CLI 功能的完整 .NET 的统称吗?

  3. 在 Windows 中,有 IIS 来托管 ASP.NET 5 应用程序。Linux 的等价物是什么?也许是 nginx 或 Apache?

4

1 回答 1

3
  1. 如果我从 project.json 中删除 Kestrel 依赖项,我的 Web 应用程序将无法启动。这是否意味着 ASP.NET 5 依赖于 Kestrel?它是 IIS 的替代品吗?

不可以。但是,它需要服务器。HTTP应用程序有几层(简化版):

  • 自举:DNX
  • 托管:它知道如何将服务器和您的应用程序连接在一起。
  • 服务器:知道如何处理 HTTP 请求。
  • 应用层:你的应用层。

因此,您可以将服务器替换为任何兼容的服务器,而不必是 Kestrel。

  1. DNX 是 .NET Core 和具有 CLI 功能的完整 .NET 的统称吗?

不,它只是加载正确的 CLR 版本并让您启动和运行的引导程序。它可能会被dotnet CLI取代。这个故事今天有点模糊,但请留意新的公告。

  1. 在 Windows 中,有 IIS 来托管 ASP.NET 5 应用程序。Linux 的等价物是什么?也许是 nginx 或 Apache?

任何适合你的东西。那甚至可能是 HAProxy。团队可能会使用其中的一个来提供样板文件,但归根结底,这完全取决于您。观看下面的两个视频,它们有关于服务器故事和 Linux 的很好的信息:

于 2016-01-13T10:18:04.070 回答