我将继续撰写一系列文章,重点介绍如何迁移网站以支持HTTPS Everywhere。HTTPS Everywhere的目标是使用最新的安全和最佳实践确保整个web的安全。然而,我们还必须注意使用HTTPS可能带来的性能影响。
我们在HTTPS上改进性能的第一步是启用保持活动的连接头。我们现在要采取的下一步是启用严格传输安全(HSTS)头。HSTS头指示用户的浏览器仅连接当前域,以及可选的所有子域,使用安全连接。
在这篇文章中,我将涵盖:
然而,在我们开始之前,让我快速指出这一点HSTS头被主流浏览器广泛接受Internet Explorer 11以下版本除外微软已经宣布ie12将支持HSTS。
这个问题的答案是:性能。正如我们刚才了解到的,HSTS设置指示浏览器仅通过HTTTPS连接,直到过期。在大多数情况下,您应该设置信息
只要你觉得舒服就可以了。通过使用HSTS,我们避免了任何不必要的重定向到我们网站的安全HTTPS地址,以及任何其他资产或资源交付我们的服务器。
例如,如果您查看下面的屏幕截图,您将看到从HTTP重定向到HTTPS的过程。此重定向是由于我们的服务器响应原始HTTP请求,使用HTTPS将301永久重定向到相同的资源。
美元cd/etc/apache2/美元sudo纳米httpd . conf
属性加载的行取消注释mod_headers.so扩展。
<IfModulemod_headers.c>头设置Strict-Transport-Security:信息= 10886400IfModule>
最后,我们希望测试配置更改并重新启动web服务器。
美元sudoapachectl - t $sudoapachectl restart
我们将为我们的站点添加一个新的标题,但是,如果需要,您也可以在服务器或文件夹级别设置响应标题。
<system.webServer><httpProtocol><customHeaders><添加的名字=”Strict-Transport-Security”价值=”信息= 31536000”/>customHeaders>httpProtocol>system.webServer>
为了测试新标题的结果,我们只需使用一个不安全的URL重新加载我们的网站。在检查网络标签内的开发者控制台在Chrome,我们可以看到浏览器正在发出一个307内部重定向。
结果是重定向到HTTP的77ms减少了0女士。
嗨,我是布莱恩。我对TypeScript, Angular和Node.js感兴趣。我和我最好的朋友邦妮结婚了,我住在波特兰,我经常滑雪。