4

我想使用托管在同一网络中的另一台 PC 上的 ASP.NET 5 应用程序连接到我的 Kestrel 服务器。是否可以?我可以从 cmd ping 我的计算机,但是当我尝试从 Web 浏览器连接时出现“连接超时”(我输入:“http://{my_kestrel_ip}:5000/”)。

4

3 回答 3

10

hosting.ini 对我们不起作用。我必须将它添加到 project.json 文件中。我相信在 Beta8 之后,hosting.ini 文件将被弃用。

--server.urls http://0.0.0.0:5000

或者我更喜欢以下我认为不那么令人困惑的内容。

--server.urls http://*:5000

所以你最终会在你的 project.json 中得到类似的东西。

"commands": {
        "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.Kestrel --server.urls http://0.0.0.0:5000",
        "ef": "EntityFramework.Commands"
    },
于 2015-12-04T16:28:35.597 回答
3

在您的项目文件夹中,您应该有一个名为hosting.ini. 默认情况下,在该文件中,您应该具有以下内容:

server=Kestrel
server.urls=http://localhost:5000

您需要让 HTTP 服务器侦听您的公共 IP 地址以及 localhost。为此,您可以通过用分号分隔它们来添加额外的地址:

server.urls=http://localhost:5000;http://{my_kestrel_ip}:5000
于 2015-11-28T20:27:05.137 回答
1

刚刚做了一个似乎有效的快速测试。在 project.json 文件旁边创建一个 hosting.json 文件。

托管.json:

{
    "server.urls": "http://localhost:5000;http://192.168.1.4:5000"
}

项目.json:

"commands": {
    "web": "Microsoft.AspNet.Server.Kestrel --config hosting.json"
},

在命令提示符下简单地运行dnx web,输出:

Hosting environment: Production
Now listening on: http://localhost:5000
Now listening on: http://192.168.1.4:5000
Application started. Press Ctrl+C to shut down.

你会得到一个防火墙提示,接受它,然后tadaaa!!您可以从 LAN 和 localhost 访问该站点。

于 2016-03-19T11:35:54.467 回答