在.NET Core应用程序中,我正在使用:new WebHostBuilder().UseUrls("http://*:1234")
。
上面的代码和new WebHostBuilder().UseUrls("http://0.0.0.0:1234")
之间的有效区别是什么?
答案 0 :(得分:2)
您可以在此处找到与文档相关的红est https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.1#url-prefixes
IPv4
0.0.0.0
是绑定到所有IPv4地址的特殊情况。
IPV6
[::]
是与IPv4 0.0.0.0等效的IPv6。
主机名
主机名
*
和+
并不特殊。任何不被认为是 有效的IP地址或localhost
绑定到所有IPv4和IPv6 IP。绑定 在同一端口上将不同的主机名分配给不同的ASP.NET Core应用程序, 使用HTTP.sys或反向代理服务器,例如IIS,Nginx或Apache。
主机localhost
的名称
指定
localhost
时,Kestrel尝试绑定到IPv4和 IPv6环回接口。如果请求的端口正在被另一个端口使用 服务在任一环回接口上,Kestrel无法启动。如果 任一环回接口均由于其他原因不可用(大多数 通常是因为不支持IPv6),Kestrel会记录警告。