我的浏览器如何将我的http请求转换为https?
我想知道的朋友,当安全托管完成时,我们需要一个唯一的ip地址来将SSL证书与之关联。另外,我在一个教程中读到,当浏览器请求安全连接时,所有SSL进程都会启动。但是浏览器如何请求安全连接呢。我们不是写www.chase.com吗?然后我们的浏览器将http转换为https?后台发生了什么?在编程代码中,使用(服务器端)评估协议并重定向这不是在浏览器中完成的 您可以在ASP.NET中的我的浏览器如何将我的http请求转换为https?,http,redirect,https,Http,Redirect,Https,我想知道的朋友,当安全托管完成时,我们需要一个唯一的ip地址来将SSL证书与之关联。另外,我在一个教程中读到,当浏览器请求安全连接时,所有SSL进程都会启动。但是浏览器如何请求安全连接呢。我们不是写www.chase.com吗?然后我们的浏览器将http转换为https?后台发生了什么?在编程代码中,使用(服务器端)评估协议并重定向这不是在浏览器中完成的 您可以在ASP.NET中的Global.asax文件中执行此操作 我不确定其他编程语言(PHP、Ruby等)。其他人可以随意插话,如果他们愿意
Global.asax
文件中执行此操作我不确定其他编程语言(PHP、Ruby等)。其他人可以随意插话,如果他们愿意,可以用更多的例子编辑我的答案 我认为默认情况下,您可以使用.htaccess在Apache中执行此操作,但据我所知,如果您想在IIS中执行此操作,则需要运行asp脚本或将其包含在.net应用程序中。我可能是错的,但这正是我在这方面的尝试中遇到的问题。逐步(假设HSTS头未处于活动状态,它将自动使用https,而无需发出http请求):
位置:https://www.example.com/
无论如何,如果您需要安装SSL/TLS证书,则必须确保您的客户端从HTTP重定向到HTTPS。这应该通过服务器配置来完成。
http://www.chase.com
重定向到https://www.chase.com
。我猜它是一个(HTTP状态代码301)。重定向消息来自服务器,而不是浏览器。蹩脚的英语不是结束问题的理由。通读答案和评论,以更清楚地了解他在寻找什么。好答案。。。我试图给出“编程”的答案,以避免这个问题被关闭…;-)你的意思是我应该首先检查响应代码,然后如果是301,那么我应该重定向。你可以用任何这样的语言来做。您也可以在大多数Web服务器的配置设置中执行此操作,而无需进行任何编程。@vinayvasyani,301是一个重定向。如果您将301发送到浏览器,它将转到另一个URI。看看RFC2616,除非你试图构建一个浏览器,否则你不应该阅读301状态代码。你是对的,这只是一个选择。不,您在评估协议时不检查301(如果不是https-则发送301并包含https URL
)
if(!Request.IsSecureConnection)
{
string redirectUrl = Request.Url.ToString().Replace("http:", "https:");
HttpContext.Current.Response.Status = "301 Moved Permanently";
HttpContext.Current.Response.AddHeader("Location", redirectUrl);
}