上周欣喜地發(fā)現(xiàn),微軟官方終于針對(duì) asp.net core 在使用負(fù)載均衡的情況下從 http 強(qiáng)制重定向至 https 的問題提供了解決方法。
app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedProto });var options = new RewriteOptions() .AddRedirectToHttpsPermanent(); app.UseRewriter(options);
但實(shí)際使用之后,欣喜變成了失望 —— 微軟對(duì)這個(gè)問題的認(rèn)識(shí)角度和我們不一樣,造成這個(gè)方法對(duì)我們不適用,不得不繼續(xù)使用我們的土方法。
為什么會(huì)這樣?請(qǐng)看下面的分解。
AddRedirectToHttpsPermanent 早就在 BasicMiddleware 的 RedirectToHttpsRule 中實(shí)現(xiàn)了,它的邏輯很簡(jiǎn)單 —— 判