.net核心部署为Windows服务时的主机绑定

时间:2019-06-21 08:01:14

标签: iis asp.net-core host

我们有一个使用.NET core 2.1创建的Web API。我们有两个服务器位于netscaler负载均衡器后面。在这些服务器中,我们设法将Web API安装在端口5000中。现在,我们有了一个DNS主机名,该主机名映射到我们的负载均衡器。我们如何为Windows服务绑定主机名?如果使用IIS进行部署,则可以在其中指定此绑定,但是当部署为Windows服务时,如何实现此绑定?

1 个答案:

答案 0 :(得分:0)

最好的方法是在IWebHostBuilder上使用UseUrls扩展方法,并使用绑定到URL的特殊方法: http://+:5000 。通过此绑定,应用程序将尝试绑定到http://localhost:5000以及http:// {hostname}:5000。 因此,您的情况下的代码将是:

WebHost.CreateDefaultBuilder(args).UseUrls("http://+:5000");

您必须确保运行Windows服务的帐户具有适当级别的权限才能绑定到网络路径!

编辑:

正如@Lex Li在评论中提到的那样,关于权限的最后一部分并不完全正确,因为您可以在安装过程中保留URL的使用。以这种方式完成后,运行Windows服务的帐户不必具有提升的权限。 Details

相关问题