我们使用Request.Url.GetLeftPart(UriPartial.Authority)获取站点的域部分.这符合我们对http的要求.
我们最近将网站更改为https(约3天前),但这仍然返回http:// ..
网址全部更改为https,并在浏览器地址栏中显示.
我们最近将网站更改为https(约3天前),但这仍然返回http:// ..
网址全部更改为https,并在浏览器地址栏中显示.
任何想法为什么会这样?
解决方法
以下示例工作正常,并返回一个带有“https”的字符串:
var uri = new Uri("https://www.google.com/?q=102njgn24gk24ng2k"); var authority = uri.GetLeftPart(UriPartial.Authority); // authority => "https://www.google.com"
您在HttpContext类中出现问题,或者您的所有请求仍然使用http:
>你可以检查请求HttpContext.Current.Request.IsSecureConnection属性.如果它是真的,并且GetLeftPart方法仍然为你返回http,我想你不会在这里替换.
>如果您的所有请求真的来自http,您可能会在IIS中强制执行安全连接.
您还应检查传入的URL并将其记录在某个地方进行调试.