StackOverflow转向默认使用HTTPS

栏目: 服务器 · 发布时间: 6年前

内容简介:StackOverflow转向默认使用HTTPS

StackOverflow 的首席架构师Nick Craver发表了一篇 博文 ,宣布StackOverflow迁移到HTTPS。在该过程中,他们经历了一些技术挑战,包括对数百个域的支持、URL迁移、用户生成内容处理,以及如何达到网站所需的严格性能需求。

这次迁移总体上历时四年,但Craver强调,该工作一直以来都并非是工作重点。例如,网站上并不存在财务信息或是信用卡支付,网站信息也并非需安全防护的高价值信息。Craver指出,事实上,StackOverflow总是将性能置于安全之上:

我应指出,性能是我们的首要驱动力,而非网站的安全性。虽然我们也需要安全性,但是安全本身并不值得我们付出对整个网站部署HTTPS所花费的时间。

Craver解释说,HTTP/2的广泛采用及在性能上的优点是他们升级到HTTPS的主要驱动力。这些优点包括: Request/Response多路复用(Multiplexing)服务器推送技术 (Server Push),  头部压缩 (Header Compression)、 数据流优先 (Stream Prioritization)和 更少的域(Origin)连接 等。由于浏览器并不支持在HTTP上实现HTTP/2,因此迁移到HTTPS不仅是一个性能上的需求,同时也是一个安全上的需求。

StackOverflow具有上百个域和子域。站点的主证书中包括了StackOverflow的全部主域,以及由通配符表示的域。在这种多个域的证书和IP一致的情况下,可利用HTTP/2提供的机制,支持浏览器对多个域使用单一的共享连接,这将提高性能。

在转向HTTPS的过程中,还需要做一些域迁移工作。例如,需要将“meta”域从“meta.*.stackexchange.com”转化为“*.meta.stackexchange.com”。Craver特别指出,这样做是因为通配符必须位于域名的最左边,单一的通配符更易于维护。

此外,网站中的敏感cookies现在是从顶级域继承而来的,原先可访问它们的域已经被移动了。Craver给出了一个例子,“SendGrid”标签现已移动到“stackoverflow.email”域中。

Craver还指出,网站中存在着大量HTTP用户生成内容,例如提问中给出的图片、用户配置信息、Youtube视频等。在迁移时所采取的第一步,是对所有新的用户生成内容强制使用HTTPS,将HTTP内容限定为遗留内容。然后,下一步是对遗留内容的迁移。其中的大部分内容仅需要进行查找并替换即可。对于那些团队把握不准的内容,如果内容工作异常,那么它或者被转化为HTTPS,或者被转化为一个链接。

JavaScript代码中也存在着数以千计的链接,这些链接基本上是使用HTTP的,甚至位于不同的“meta”域中。据Craver介绍,他们是逐个代码分别处理的,使用“ <site>.Url(‘/path’) ”调用替换了这些连接。只要启用了特性标识,这将从根本上转化这些链接为HTTPS。

Craver强调,他们也非常重视避免丢失任何来自Google的流量,这是网站流量的重要来源,因而也是网站收入的主要来源。尽管Google所需的更改非常简单(将301跳转从HTTP更改为HTTPS,并更新权威链接),团队也必须要慎重,以免犯错误。

迁移最后还会涉及WebSocket,需要将所有事情转换为WebSocket加密,这也是为避免影响网站性能而在功能上的直接需要。据Craver介绍,他们可一次同时打开近五十万个并发的websocket连接。

该博文的内容很长,但是值得一读。

查看英文原文: Stack Overflow Becomes HTTPS by Default


以上所述就是小编给大家介绍的《StackOverflow转向默认使用HTTPS》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

About Face 4: 交互设计精髓

About Face 4: 交互设计精髓

[美] 艾伦·库伯、[美] 罗伯特·莱曼、[美] 戴维·克罗宁、[美] 克里斯托弗·诺埃塞尔 / 倪卫国、刘松涛、杭敏、薛菲 / 电子工出版社 / 2015-10 / 118.00元

《About Face 4: 交互设计精髓》是《About Face 3:交互设计精髓》的升级版,此次升级把全书的结构重组优化,更加精练和易用;更新了一些适合当下时代的术语和实例,文字全部重新编译,更加清晰易读;增加了更多目标导向设计过程的细节,更新了现行实践,重点增加 移动和触屏平台交互设计,其实《About Face 4: 交互设计精髓》多数内容适用于多种平台。 《About F......一起来看看 《About Face 4: 交互设计精髓》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具