上周欣喜地發(fā)現(xiàn),微軟官方終于針對 asp.net core 在使用負載均衡的情況下從 http 強制重定向至 https 的問題提供了解決方法。

iOS培訓,Swift培訓,蘋果開發(fā)培訓,移動開發(fā)培訓

app.UseForwardedHeaders(new ForwardedHeadersOptions
{
    ForwardedHeaders = ForwardedHeaders.XForwardedProto
});var options = new RewriteOptions()
    .AddRedirectToHttpsPermanent();
app.UseRewriter(options);

iOS培訓,Swift培訓,蘋果開發(fā)培訓,移動開發(fā)培訓

但實際使用之后,欣喜變成了失望 —— 微軟對這個問題的認識角度和我們不一樣,造成這個方法對我們不適用,不得不繼續(xù)使用我們的土方法。

為什么會這樣?請看下面的分解。 

AddRedirectToHttpsPermanent 早就在 BasicMiddleware 的 RedirectToHttpsRule 中實現(xiàn)了,它的邏輯很簡單 —— 判