先搞清楚:浏览器到底在哪些地方"记住"你
打开一个网站,关掉再打开还是登录状态;逛过的商品它还记得;甚至换了账号,它也能隐约感觉"这还是刚才那台设备"。这些"记忆"并不是存在某一个神秘的地方,而是分散在浏览器的好几套存储机制里。想弄明白隔离到底隔离了什么,得先认识这几位"记性很好"的角色。
Cookie 是最老也最有名的一种。它是网站存在你浏览器里的一小段文本,每次你访问该网站,浏览器都会自动把对应的 Cookie 一起带上。登录态通常就靠它:你输入账号密码后,服务器发回一个 session 标识写进 Cookie,之后每次请求带着它,网站就知道"你已经登录了"。Cookie 容量小、有过期时间,但因为会自动随请求发送,所以是识别和跟踪你的主力。
LocalStorage 是网站能在你浏览器里存放的键值数据,容量比 Cookie 大得多,而且不会自动跟着请求发送,需要页面里的脚本主动读取。很多站点把用户偏好、草稿、甚至一部分登录凭证放在这里。它没有过期时间,不手动清就一直在。
IndexedDB 则是一个真正意义上的"浏览器内数据库",能结构化地存大量数据——离线内容、消息记录、缓存的接口数据都可能落在这里。它藏得更深,普通用户几乎不会想到它的存在,却同样牢牢记着你。
缓存 是另一类。为了让网页第二次打开更快,浏览器会把图片、脚本、样式等资源暂存下来。看起来只关乎速度,但缓存里留下的文件、时间戳,同样是"你来过"的证据,某些跟踪手段会专门利用缓存来给你打标记。
为什么"清 Cookie"往往不够
理解了上面几位,就能明白一个常见误区:很多人换账号前只"清 Cookie",以为痕迹就没了。但 Cookie 只是记忆的一部分,LocalStorage、IndexedDB 和缓存里的东西纹丝未动。你清掉了门口的签到本,屋里的档案柜却原封不动。网站脚本一读 LocalStorage,发现老数据还在,立刻就把你和上一个身份对上了。
更关键的是,这些存储只回答了"你之前来过没有",而网站识别你还有另一条完全不依赖存储的线索——浏览器指纹。屏幕分辨率、时区、字体列表、显卡渲染特征、语言设置等信息组合起来,能相当精确地勾勒出"这台设备长什么样"。哪怕你把所有存储清得干干净净,指纹没变,网站照样能认出"又是这台机器"。所以单清 Cookie,既没清干净存储,也完全没碰指纹,自然挡不住识别。
多账号为什么必须"彻底"隔离存储
对需要同时运营多个账号的人来说,问题会被放大。假设几个账号共用同一个浏览器环境,会发生两件麻烦事。
一是登录态互相串。Cookie 和存储都混在一起,切换账号时很容易残留上一个账号的凭证,出现登录态错乱,甚至在平台看来像是"同一处来回切号"的异常操作。
二是痕迹交叉。A 账号的 LocalStorage、IndexedDB 和 B 账号的混在一个空间里,平台通过这些共享的本地数据,很容易把本该毫无关系的几个账号串成一串,判定它们属于同一人——这正是多账号运营最想避免的"关联"。
真正的隔离,不是"每次用完清一遍",而是让每个账号从一开始就待在各自独立、互不可见的存储空间里。
真正的隔离长什么样
浏览器把一个用户的全部本地数据——Cookie、LocalStorage、IndexedDB、缓存等——都放在一个叫 user-data-dir(用户数据目录)的文件夹里。你平时用的浏览器通常只有一个这样的目录,所有网站的记忆都堆在一起。
所谓彻底隔离,通俗讲就是给每个账号配一个完全独立的 user-data-dir。就像给每个身份单独准备一间房、一套档案柜,A 房间里的任何记录 B 房间都看不见,反之亦然。这样一来,不同环境之间天然不共享任何存储,不会串登录态,也不会因为共用本地数据被交叉关联。
以虎鲸 AI 浏览器为例,它的每个环境就是一个独立的 user-data-dir:独立的 Cookie、独立的本地存储和缓存,环境之间互不可见;同时每个环境还配有独立且自洽的指纹与独立的代理出口。这里要强调口径——隔离做的是把身份的本地痕迹和设备特征分开,并不等于任何"防封"承诺,平台的风控规则和实际效果请以官方说明为准。
存储隔离和指纹隔离,缺一不可
最后把两条线并起来看。存储隔离解决的是"你之前来过没有、留没留下痕迹";指纹隔离解决的是"这台设备看起来像不像同一台"。前者管记忆,后者管长相。只做存储隔离、指纹却完全一样,几个环境看上去还是同一台机器;只换指纹、存储却共用,老的登录态和痕迹又会把你出卖。两者都做到位,一个环境才像一个真正独立的用户,而不是同一个人戴了不同的面具。
弄懂"记忆分散在好几处"这件事,再看多账号隔离就清楚多了:不是清一清就行,而是从存储到指纹,每个环境都得是独立的一整套。