ASP.NET 5自主机

时间:2015-06-11 00:45:42

标签: c# asp.net asp.net-core-1.0 self-hosting

我在ASP.NET 5中使用自托管项目。

PROJECT.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 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,试图自我托管,只能在本地访问。我查看了愤怒的IP扫描程序,看到该应用程序运行时端口甚至没有打开,这显然会阻止远程访问。

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

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

答案 1 :(得分:1)

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

找到
  

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

答案 2 :(得分:1)

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

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

  

netsh http add urlacl url = http://yourip:yourport/ user = everyone

这只是告诉http.sys可以和这个网址对话。

答案 3 :(得分:0)

  1. 在防火墙中进行更改,以允许在您公开的端口上进行TCP连接(例如,在这种情况下为5000)。
  2. 您的机器将具有机器名称。因此,您可以使用http://:5000 /
  3. 从其他计算机访问该网站

    请注意,只有当另一台计算机也在同一LAN网络中时,才能访问本机。只需使用" ping"快速查看两台机器是否在同一网络中。