最近在写.Net5 MVC项目时遇到了个问题 在强制转换https请求后浏览器URL地址栏中显示为正常https请求(可能是浏览器缓存,但是我记得我清除缓存之后访问的) 请求状态码为308(301,302,307都用过) 在Configure中加入自定义中间件打印请求日志发现还是http请求 项目是发布到iis上面的 iis本身的http重定向没有设置过 还望各位指点迷津
app.UseHsts();
var options = new RewriteOptions();
//options.AddRedirectToHttps();
options.AddRedirectToHttpsPermanent();
app.UseRewriter(options);
app.UseHsts();
app.UseHttpsRedirection();
var response = context.HttpContext.Response;
response.StatusCode = 301;
response.Headers[HeaderNames.Location] = newUrl;
context.Result = RuleResult.EndResponse;
上面三种方法都试过了 用第一个和第三个方法把非www请求重定向到www请求是可以正常使用的 还望各位指点迷津 (0_0-)走过路过不要错过 留个思路也行的
相关问题
- Generic Generics in Managed C++
- How to Debug/Register a Permanent WMI Event Which
- 'System.Threading.ThreadAbortException' in
- Bulk update SQL Server C#
- Should I use static function in c# where many call
最终解决方案
看一下,iis的版本支不支持hsts
https://q.cnblogs.com/q/85129/
这个问题,应该能解决你的问题