我们经常会遇到这样的问题:一个页面崩溃,其他页面也跟着一起崩溃, 那么原因是什么呢?
有一个概念叫做 “同一站点”:
它的定义为:根域名+协议 相同
http://baidu.com
http://baidu.com:8080
http://www.baidu.com
以上三个为同一站点
(协议都是http ,根域名都是baidu.com)
(和同源策略不一样,同源是协议,域名,端口号都需要一致)
浏览器的策略是:(process-per-site-instance)
1.如果从一个页面打开了新页面,而新页面和当前页面属于同一站点时,那么新页面会复用父页面的渲染进程
2.当几个页面符合 同一站点 ,就会被分配到同一个渲染进程中,同时它们会共享js的执行环境,当两个页面在同一渲染进程中时,一个页面崩溃了,会导致同一渲染进程的另一个页面同时崩溃。