访问被拒绝 Microsoft.AspNetCore.Server.WebListener

Access is denied Microsoft.AspNetCore.Server.WebListener

我在无状态 Microsoft 服务结构服务中使用下面的代码来托管 .net 核心自托管 MVC 应用程序,不幸的是,当我 运行 下面的代码时,我收到错误 "Access is denied"当调用 Start() 方法时。

如果我改用 Kestrel 而不是 WebListener,那就没问题了。如果我将代码移动到标准控制台应用程序(即不使用服务结构)就可以了。

我怎样才能让它与 WebListener 一起工作?

            _host = new WebHostBuilder()
                .UseUrls(listeningAddress)
                .UseServer("Microsoft.AspNetCore.Server.WebListener")
                .UseContentRoot(wwwroot)
                .UseStartup<Startup>()
                .Build();

            //                    .UseKestrel()

            _host.Start();

您可能遇到了 urlacls 问题: netsh http add urlacl url=https://+:443/ user=Everyone

我目前有一些 SF 东西需要在遇到 OWIN Startup 方法时设置 urlacl,以免它在事件日志中抛出 Access Denied 以及一些关于无法找到 OWIN Startup 的无用错误 class,然后是 IIS 中的一些内容,在设置时会出现 503 错误。所以我正在部署 SF 东西,然后 运行 netsh http delete urlacl url=https://+:443/ 在我的 IIS 东西之前。

我实际上是通过使用核心 rc2 版本和 UseWebListener 扩展而不是 UseServer 扩展来实现它的