IIS 不启动 .net core 1.0 可执行文件

IIS does not start .net core 1.0 executable

所以在 .net core 1.0 发布后,我开始了一个新的控制台项目,并从一个应该 运行 没有 IIS 的小原型导入了代码。除了由于尚未更新的 MongoDB.Driver 而必须在我的 project.json 中使用 net46 之外,它工作正常。当我在 Visual Studio 中构建应用程序时,会构建一个带有大量 dll 的小型 App.exe 并且可以 运行 在没有 IIS 的情况下在本地正常运行。

然后我注意到为 IIS Express 构建的选项,并认为我也可以在我们的服务器(IIS 6.2,Windows Server 2012 R2)上使用 IIS。它使用 WebDeploy 可以很好地发布,但之后什么也没有发生。我正在关注 this official guide。我安装了 .NET 核心 Windows 服务器托管包,一切似乎都井井有条,但是当我浏览到 url 时,我得到一个 ERR_NAME_NOT_RESOLVED. Theapp.exedoes not appear in the Task Manager and I can't find any log file, although it is enabled in theweb.config. I can execute the app manually, but then it only listens on the defaultlocalhost:5000` 地址.

如果我理解正确,IIS 应该充当启动 dlldotnet 工具的反向代理,但在我的例子中,它已经是一个已编译的 [=19] =] 独立工作。但我不知道如何从这个应用程序构建 dll..

我做错了什么?

如果您以完整的 .NET Framework 为目标,应用程序将是 .exe 而不是 .dll,这没问题。 ERR_NAME_NOT_RESOLVED表示您在浏览器中提供的url无法解析,未能向应用程序发出请求。 AspNet 核心模块在第一次请求时启动应用程序,但由于无法解析主机,因此未发出请求且应用程序未启动。一旦您弄清楚为什么名称无法解析,并且您仍然无法使您的应用程序与 IIS 一起工作,请查看 at my post,它解释了事情是如何工作的以及如何解决问题。但是,这仅在请求到达您的应用程序后才适用。