2016-01-27 27 views
0

我使用web命令从Visual Studio中的默认项目设置运行控制台Kestrel Web服务。当Kestrel已经在运行时,由于端口被占用而无法启动,所以我需要先关闭运行的端口。是否可以添加一些参数或其他方式使其自动杀死运行的红隼?例如。在IISExpress上,您可以尽可能多地运行,无需杀死正在运行的IISExpress。在Visual Studio中的ASP.NET Core(ASP.NET 5)中重新启动web命令重启Kestrel(ASP.NET 5)

现在看起来,对我说:

"commands": { 
    "web": "Microsoft.AspNet.Server.Kestrel" 

}

+0

通过使用'gulp'或'grunt'任务也许 –

+0

@aguafrommars不太清楚你的意思 –

+0

'grunt'有一个'咕噜-kill'任务杀死一个过程,可能是你可以用它来杀死每个版本上的红隼' –

回答

0

的问题是,在默认情况下,所有项目都配置为在端口5000上运行,IISExpress能够在运行多个服务同一时间,因为它注册每个不同的端口。要使用Kestrel来做到这一点,您需要在启动命令中指定端口。你可以在命令部分project.json文件做到这一点,改变网络命令是这样的

“网络”:“Microsoft.AspNet.Kestrel --server.urls http://localhost:5004

来源: http://docs.asp.net/en/latest/fundamentals/servers.html

+0

但这不会帮助,因为这个端口将在第一次启动后立即占用? –

+0

@IlyaChernomordik是的,但这就是为什么你需要为每个站点设置不同的端口,所以他们可以同时运行 – evilpilaf

+0

这不是为我需要的不同站点,而是为同一站点。所以我改变了一些代码,需要重新运行服务器。我需要先杀了它,然后开始,最好重新启动:) –

相关问题