C# 忽略Asp.Net Core 2.2 UseURL
我的Asp.NETCore2.2中有以下代码C# 忽略Asp.Net Core 2.2 UseURL,c#,asp.net-core,iis,.net-core,kestrel,C#,Asp.net Core,Iis,.net Core,Kestrel,我的Asp.NETCore2.2中有以下代码 public class Program { public static void Main(string[] args) { var urls = new string[] { "https://localhost:3045" }; CreateWebHostBuilder(args, urls).Build().Run(); } public static IWebHostBuil
public class Program
{
public static void Main(string[] args)
{
var urls = new string[] { "https://localhost:3045" };
CreateWebHostBuilder(args, urls).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args, string[] bindingUrls) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureServices(services => services.AddAutofac())
.ConfigureKestrel(opt =>
{
opt.AddServerHeader = false;
})
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseUrls(bindingUrls)
.UseStartup<Startup>();
}
公共类程序
{
公共静态void Main(字符串[]args)
{
var url=新字符串[]{”https://localhost:3045" };
CreateWebHostBuilder(参数,URL).Build().Run();
}
公共静态IWebHostBuilder CreateWebHostBuilder(字符串[]参数,字符串[]绑定URL)=>
WebHost.CreateDefaultBuilder(args)
.ConfigureServices(服务=>services.AddAutofac())
.ConfigureKestrel(选项=>
{
opt.AddServerHeader=false;
})
.UseContentRoot(目录.GetCurrentDirectory())
.Useii整合()
.useURL(绑定URL)
.UseStartup();
}
然而,当我调试网站时,它是在https://localhost:44326/
为什么在launchSettings.json中使用
为什么会发生这种情况?.useURL(bindingURL)
将配置红隼url
dotnet core始终位于Kestrel的IIS
/IIS Express
后面作为代理。您得到的url是您的IIS Express
的配置
可以在项目设置或launchSettings.json中更改此url
如果您只想在Kestrel用户上运行cli命令dotnet run
或dotnet watch run
是否直接启动IIS express或可执行文件?它是Visual Studio中运行按钮附近的组合框。正在使用IIS Express启动。这不是https://localhost:44326/
是否在项目属性中设置?如果在版本中而不是在调试中生成项目,它是否正常工作?您可以运行IIS Express或直接运行project-这是visual studio中的一个UI选项,不需要cli命令。