asp.net core 6.0红隼服务器不工作



我有这个代码运行kestrel

builder.WebHost.UseKestrel().UseUrls("https://myfirstproj1.asp")
.UseIISIntegration();

但是我无法通过我指定的url访问该站点。我做错了什么?

.net 6不再使用UserUrls()方法。这是如何在。net 6上做到的。在Program.cs

var builder = WebApplication.CreateBuilder(args);
//...
builder.WebHost.ConfigureKestrel(options =>
{
options.ListenAnyIP(5001); // to listen for incoming http connection on port 5001
options.ListenAnyIP(7001, configure => configure.UseHttps()); // to listen for incoming https connection on port 7001
});
//...
var app = builder.Build();

UseKestrel也适用于我。不知道有什么区别:/

var builder = WebApplication.CreateBuilder(args);
builder.WebHost.UseKestrel(serverOptions =>
{

serverOptions.ListenAnyIP(4000);
serverOptions.ListenAnyIP(4001, listenOptions => listenOptions.UseHttps());
});

从。net 7开始,你现在需要这样做,因为上面的方法不再适用于。net 7项目(尽管适用于。net 6项目)。

appsettings开放。并添加以下内容:

{
//Other code above
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://localhost:5014"
}
}
}
}

你也可以在这里为Https指定一个端点,但我只需要设置一个http端口,因为它是由Linux服务器上的Apache代理的。

请注意,如果你在这里添加了一个https选项,并且没有配置证书,那么网站仍然会预览,但将无法在Ubuntu的Kestrel服务器上加载。

看来上述选项适用于。net 6也似乎更简单,允许将URL和端口以同样的方式使用设置文件设置为其他配置选项而不是改变代码。

相关内容

  • 没有找到相关文章

最新更新