c# - Asp.net core 2.1 UseHttpsRedirection 在 IIS 中不起作用
问题描述
我将我的 asp.net core 2.1 WebApi 部署到 IIS 10。(IIS 充当代理)
我在 IIS 中添加了 SSL 证书,并为不安全端口 (8081) 和安全端口 (8082) 绑定。
但是当我访问http://localhost:8081/api/values时,浏览器只会返回 403 Forbidden ,而不是将我重定向到https://localhost:8082/api/values。
我的启动代码如下:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
services.AddHttpsRedirection(options=>
{
options.HttpsPort = 8082;
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
//app.UseForwardedHeaders();
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseMvc();
}
解决方案
我发现的问题是从 .net core 2.0 到 .net core 2.1 的更改意味着需要在 startup.cs 中明确指定 https 端口
services.AddHttpsRedirection(options =>
{
options.HttpsPort = 443;
});
有关更多信息,请参见此处:https ://github.com/aspnet/AspNetCore/issues/3176
推荐阅读
- json - 如何从 API 而不是本地 json 文件将数据加载到 React State?
- node.js - 通过 id 消费 rabbitmq 消息
- c# - 注册具有不同参数的服务并在控制器中使用它们
- arduino-uno - 如何解决串行监视器上的无意义字符 Arduino
- junit - 方法抛出 'org.mockito.exceptions.misusing.InvalidUseOfMatchersException' 异常。无法评估
- javascript - 将 json 从 json_ecode() 转换为 javascript 数组
- javafx - PropertyValueProperty 无法检索属性
- c++ - C ++等待进程完成多次?
- annotations - 我可以从特定的类注释值加载一个类吗
- java - 如何在Android中将文件保存到Uri路径