如何将 Server.Urls 更改为 Microsoft.AspNet.Server.WebListener

How to Change Server.Urls with Microsoft.AspNet.Server.WebListener

许多 articles 正在使用 Microsoft.AspNet.Server.WebListener 设置服务器,并将 --server.urls 列为设置要监听的 url 的变量。但是,所有文章都将 localhost 确定为带有端口的 url。

如何将 url 从本地主机更改为自定义 url?

我尝试了以下操作,但命令以代码 1 (0x1) 退出。

{
    "webroot": "wwwroot",
    "version": "1.0.0-*",
    "dependencies": {
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
        "Microsoft.AspNet.Mvc": "6.0.0-beta3",
        "Microsoft.AspNet.WebApi": "5.2.3-beta1",
        "jQuery": "2.1.3.0",
        "Microsoft.AspNet.Server.WebListener": "1.0.0-beta3"
    },
    "frameworks": {
        "aspnet50": { },
        "aspnetcore50": { }
    },
    "commands": {
        "Web ": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://toolset.local:5000"
    },
    "bundleExclude": [
        "node_modules",
        "bower_components",
        "**.kproj",
        "**.user",
        "**.vspscc"
    ],
    "exclude": [
        "wwwroot",
        "node_modules",
        "bower_components"
    ]
}

这是一篇关于配置自托管服务器的文章: https://katanaproject.codeplex.com/wikipage?title=Selfhosting&referringTitle=Documentation

它是为 Katana/HttpListener 编写的,但它应该仍然适用于 WebListener

正如@victor-hurdugaci 所说,确保您是 运行 VS 管理员。 我现在遇到了同样的问题,他的回答解决了。

我在project.json中的命令是"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://192.168.2.2:5001",

此外,从控制台尝试 运行 dnx . web 并查看输出

我刚开始使用 Asp.NET 5 并尝试 运行 MS 示例项目 自托管。首先从我的开发机器,然后从我们的 Intranet 服务器。
注意:我使用的是 VS2015 Update 1 RC(在 Update1 中可能会有相关更改)
VS 部署设置:web - CLR 类型:.NET 核心
我的项目存储在网络共享上。 首先,我尝试将项目(存储在网络共享上)部署到本地文件系统上的目录并收到如下错误消息:

EPERM, open 'C:\Windows\npm-debug.log'      

然后我将我的项目从网络共享复制到本地驱动器(看起来,因为从网络共享加载/部署项目不能开箱即用)。
更新:如果你映射一个驱动器,它可以工作(只有 UNC-Path 似乎不工作)
将项目复制到本地驱动器后,我能够部署到本地驱动器上的目录。
然后,我不得不编辑文件 [app-directory]\approot\src\[app-name]\hosting.ini:
将 localhost:5000 更改为 [IP-to-my-machine]:5000
然后我必须在 windows-firewall 中为我的机器的端口 5000 定义一个入站路由。
然后我不得不以管理员身份启动文件 [app-directory]\web.cmd
这样做之后,我就可以从我的机器(通过我的 IP:5000)和局域网中的另一台机器启动自托管 Web 应用程序。

之后,我在我们的内网服务器上做了同样的事情(将目录复制到内网服务器上,和在我的本地机器上做同样的事情,但使用服务器 IP 地址),它也可以从内网工作服务器(也通过 DNS 名称)。