3

我有一个使用自托管的 ASP.NET 5 项目。

项目.JSON

"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000",
"gen": "Microsoft.Framework.CodeGeneration",
"ef":  "EntityFramework.Commands"
},

它使用http://localhost:5000 ...

我想知道如何从另一台 PC 访问该网站,而不是使用 localhost。就像有或没有 DNS 的 IP。

请帮我!

4

4 回答 4

1

我在尝试自我托管并且只能在本地访问时遇到了同样的问题。我检查了 Angry IP Scanner,发现当应用程序运行时端口甚至没有打开,很明显这会阻止远程访问。

最终我意识到该--server.urls命令必须基本上像 IIS 中的绑定一样工作,所以在你拥有的地方--server.urls http://localhost:5000,你只需要更改localhost你的计算机名称或 IP 地址(或同时添加两者),例如--server.urls http://mypc:5000

这对我有用,所以我希望它对你有用!

于 2015-11-06T10:56:15.733 回答
1

这个问题的答案可以在这里找到https://github.com/aspnet/Home/issues/799

将 server.urls= http://localhost:5000更改为 server.urls=http://*:5000,但如果这样做,则需要以管理员身份运行进程(或 VS)。

于 2016-05-25T14:43:57.027 回答
1

您应该允许应用程序的传入连接:

首先,启动管理命令提示符。其次,运行这些命令,将 yourip:yourport 替换为您正在使用的任何 IP 和端口:

netsh http 添加 urlacl url= http://yourip:yourport/ user=everyone

这只是告诉 http.sys 可以与此 url 交谈。

于 2016-05-25T14:55:43.360 回答
0
  1. 在您的防火墙中进行更改以允许它在您公开的端口上建立 TCP 连接(例如,在这种情况下为 5000)。
  2. 您的机器将有一个机器名称。因此,您可以使用 http://:5000/ 从另一台机器访问该网站

请注意,只有当另一台机器也在同一个 LAN 网络中时,您才能访问该机器。只需使用“ping”即可快速查看两台机器是否在同一个网络中。

于 2015-06-11T01:11:16.517 回答