要让Safari每次启动都恢复上次关闭时的所有标签页,需同时满足:一、Safari设置中“Safari启动时”选“上次的所有窗口”;二、系统设置中开启“退出应用时重新打开”;三、保留~/Library/Saved Application State/com.apple.Safari.savedState/中的会话文件。

你想让 Safari 浏览器每次一打开就回到上次关闭时的状态,所有标签页原样重现,而不是跳转到主页或空白页。这需要同时满足三个条件:Safari 自身启用会话恢复、系统级窗口恢复功能开启、且没有手动清除过会话缓存文件。
启用 Safari 内置的“上次所有窗口”启动模式
第一步:点击屏幕左上角 Safari 菜单 → 选择“设置”(macOS Sequoia 及更新版本中已改称“设置”,旧版显示为“偏好设置”)。
第二步:点选顶部的“通用”标签页。
第三步:在“Safari 启动时”下拉菜单中,【必须选择“上次的所有窗口”】。其他选项如“主页”“新建窗口”“起始页”均无法触发标签页恢复行为。
第四步:关闭当前所有 Safari 窗口(不是仅关闭标签页),然后完全退出 Safari(右键 Dock 图标 → “退出”,或 Command + Q)。这一步不可跳过,否则新设置不会被写入运行时状态。
开启系统级窗口恢复功能
macOS 默认可能已关闭该功能,导致 Safari 的“上次所有窗口”设置失效。
① 点击苹果菜单 → “系统设置” → 左侧“桌面与程序坞”。
② 向下滚动,找到“退出应用时重新打开”选项 → 将其开关设为【开启】。
③ 此设置影响所有支持恢复的应用,不仅是 Safari;若此处关闭,即使 Safari 设置为“上次的所有窗口”,启动时也只会打开一个空窗口。
确保会话缓存未被手动清除
方法一:检查并保留会话文件夹
完全退出 Safari 后,按下 Shift + Command + G,输入路径:~/Library/Saved Application State/com.apple.Safari.savedState/ → 回车进入。
确认该文件夹内存在 restore.plist 和多个以 window_ 开头的子文件夹 —— 这些是 Safari 保存的窗口快照。如果该目录为空或已被清空,恢复功能将无数据可载入。
方法二:避免误删操作
不要手动删除 com.apple.Safari.savedState 文件夹,也不要用第三方清理工具勾选“浏览器会话数据”。【一旦删除,上次标签页记录即永久丢失,无法通过设置找回】。
验证是否生效
打开 Safari,观察地址栏下方是否出现“从上次会话恢复”提示条(仅首次恢复时显示)。
若未出现,立即按住 Shift 键再启动 Safari —— 这会临时禁用恢复,说明此前设置已生效但被手动干预覆盖;松开 Shift 后再次启动即可正常恢复。
打开后逐一核对:所有窗口数量、每个窗口内的标签页顺序、当前激活标签页位置,均应与上次退出前完全一致。


















