我可以在 ASP.net Core 2.0 Preview 中的 appsettings.json 中设置监听 URL 吗?
Can I set listen URLs in appsettings.json in ASP.net Core 2.0 Preview?
我正在 .net Core 2.0 运行 时间上为 运行 创建一个 ASP.net Core 2.0 应用程序,两者目前都处于预览版本中。但是,我无法弄清楚如何让 Kestrel 使用默认 http://localhost:5000
listen URL.
以外的其他内容
我可以 Google 讨论的大多数文档都在讨论 server.urls
设置,即使在 1.0 预览版中似乎也已更改为 urls
,但是两者都不起作用(转向在调试日志记录上,Kestrel 告诉我没有配置侦听端点)。
很多文档也谈到了 hosting.json
而我不能使用默认的 appsettings.json。但是,如果我比较推荐的加载新配置的方法,这看起来与新 WebHost.CreateDefaultBuilder
方法所做的非常相似,除了它加载 appsettings.json.
我目前不明白 appsettings.json 和 IConfigureOptions<T>
是如何相关的,如果有的话,所以我的问题可能是因为不了解 KestrelServerOptionsSetup
实际上是什么
我用它工作了
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseConfiguration(new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true)
.Build()
)
.UseStartup<Startup>()
.Build();
还有 hosting.json
{ "urls": "http://*:5005;" }
像以前一样适合我
WebHost.CreateDefaultBuilder(args)
.UseConfiguration( new ConfigurationBuilder().AddCommandLine(args).Build() )
.UseStartup<Startup>()
.Build();
然后
dotnet myapp.dll --urls "http://*:5060;"
以上的 None 对我有用。这个对我有用:
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel(options =>
{
options.Listen(System.Net.IPAddress.Loopback, 44306, listenOptions =>
{
listenOptions.UseHttps("mysertificate.pfx", "thecertificatePassword");
});
})
.Build();
(将44306改成自己喜欢的端口)
这方面可能会有很多帮助
要在 appsettings.json 中设置侦听 URL,请添加 "Kestrel" 部分:
"Kestrel": {
"EndPoints": {
"Http": {
"Url": "http://localhost:5000"
}
}
}
参考:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.2
我正在 .net Core 2.0 运行 时间上为 运行 创建一个 ASP.net Core 2.0 应用程序,两者目前都处于预览版本中。但是,我无法弄清楚如何让 Kestrel 使用默认 http://localhost:5000
listen URL.
我可以 Google 讨论的大多数文档都在讨论 server.urls
设置,即使在 1.0 预览版中似乎也已更改为 urls
,但是两者都不起作用(转向在调试日志记录上,Kestrel 告诉我没有配置侦听端点)。
很多文档也谈到了 hosting.json
而我不能使用默认的 appsettings.json。但是,如果我比较推荐的加载新配置的方法,这看起来与新 WebHost.CreateDefaultBuilder
方法所做的非常相似,除了它加载 appsettings.json.
我目前不明白 appsettings.json 和 IConfigureOptions<T>
是如何相关的,如果有的话,所以我的问题可能是因为不了解 KestrelServerOptionsSetup
实际上是什么
我用它工作了
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseConfiguration(new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true)
.Build()
)
.UseStartup<Startup>()
.Build();
还有 hosting.json
{ "urls": "http://*:5005;" }
像以前一样适合我
WebHost.CreateDefaultBuilder(args)
.UseConfiguration( new ConfigurationBuilder().AddCommandLine(args).Build() )
.UseStartup<Startup>()
.Build();
然后
dotnet myapp.dll --urls "http://*:5060;"
None 对我有用。这个对我有用:
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel(options =>
{
options.Listen(System.Net.IPAddress.Loopback, 44306, listenOptions =>
{
listenOptions.UseHttps("mysertificate.pfx", "thecertificatePassword");
});
})
.Build();
(将44306改成自己喜欢的端口)
这方面可能会有很多帮助
要在 appsettings.json 中设置侦听 URL,请添加 "Kestrel" 部分:
"Kestrel": {
"EndPoints": {
"Http": {
"Url": "http://localhost:5000"
}
}
}
参考:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.2