跳到主要内容

站点隔离

站点隔离(Site Isolation)是 Chromium 的进程策略:把不同站点的文档放进不同渲染进程,降低一个站点读到另一个站点内存的可能。Electron 使用这份 Chromium,因此同样适用。

实际影响:

  • 一个 BrowserWindow 里的跨站 iframe,可能跑在另一个进程。
  • 同一站点的多个框架可能共用进程。
  • 不能用“窗口个数”直接当作“渲染进程个数”。查看进程用 app.getAppMetrics()。

权限仍然按 webContents 配置。父页面的 nodeIntegration: false 不会自动变成“子框架可以打开 Node”。子框架还有 nodeIntegrationInSubFrames。

不可信内容更稳妥的放法是单独的 WebContentsView 或独立窗口,使用自己的 partition 和预加载脚本,而不是只靠站点隔离。

相关文档​