刚刚在 ubuntu 服务器 14.4.4 https://www.microsoft.com/net/core#ubuntu 上安装了 dotnet core 的最新版本 测试webapp(dotnet run)正在端口:5000上运行;但是,当尝试从主机上的网络浏览器运行时(ubuntu-server 是 vm 客户端计算机),我收到消息“无法访问站点”。我已经在 Ubuntu 服务器上打开了端口 5000。
我必须承认我也在这个 ubuntu 服务器上安装了 nginx(并成功在端口 80 上获取默认的 nginx 页面 - ASP.NET webapp 也不起作用,我尝试按照 https://docs.asp.net/en/latest/publishing/linuxproduction.html 可能配置不正确)。
但是,为了仅使用 kestrel(在端口 5000 上)进行测试,我停止了 nginx Web 服务器。首先要做的事情。
有人知道在端口:5000 上使用 kestrel 进行测试会出现什么问题吗?
最佳答案
Kestrel Web 服务器默认监听 localhost:5000,因此,如果您没有更改它监听的主机,您将无法从远程计算机(或在您的情况下,是主机)。
您可以通过多种方式将 Kestrel 配置为监听不同的主机或端口。最简单的实现是添加行 .UseUrls("http://0.0.0.0:5000")
就在.UseKestrel()
之后在你的Main
方法。这将使应用程序使用端口 5000 监听所有可用的 IP 地址。
更新
如svick下面指出,.UseUrls("http://*:5000")
也将允许您使用 IPv6 地址。
关于ubuntu - ASP.NET Core 测试 : site can't be reached,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37460631/