HTTP网站跳转到HTTPS网站要注意的

现在有了 HTTPS 服务,但原来的 HTTP 站点也不能马上弃用,还是会有很多网民习惯在地
址栏里直接敲域名(或者是旧的书签、超链接),默认使用 HTTP 协议访问。
所以,我们就需要用到第 18 讲里的“重定向跳转”技术了,把不安全的 HTTP 网址用 301
或 302“重定向”到新的 HTTPS 网站,这在 Nginx 里也很容易做到,使
用“return”或“rewrite”都可以
1
2
return 301 https://$host$request_uri; # 永久重定向
rewrite ^ https://$host$request_uri permanent; # 永久重定向
 
但这种方式有两个问题。一个是重定向增加了网络成本,多出了一次请求;另一个是存在安
全隐患,重定向的响应可能会被“中间人”窜改,实现“会话劫持”,跳转到恶意网站。
 
不过有一种叫“ HSTS ”(HTTP 严格传输安全,HTTP Strict Transport Security)的技术
可以消除这种安全隐患。HTTPS 服务器需要在发出的响应头里添加一个“ Strict
Transport-Security ”的字段,再设定一个有效期,例如:
Strict-Transport-Security: max-age=15768000; includeSubDomains
 
这相当于告诉浏览器:我这个网站必须严格使用 HTTPS 协议,在半年之内(182.5 天)都
不允许用 HTTP,你以后就自己做转换吧,不要再来麻烦我了。
有了“HSTS”的指示,以后浏览器再访问同样的域名的时候就会自动把 URI 里
的“http”改成“https”,直接访问安全的 HTTPS 网站。这样“中间人”就失去了攻击
的机会,而且对于客户端来说也免去了一次跳转,加快了连接速度。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值