Cookie 的 Domain 设置到底该怎么配才安全?

シ雪利 阅读 5

我在部署一个前后端分离的项目,后端设置 Cookie 时指定了 Domain 为 .example.com,但前端在子域名 app.example.com 下死活读不到这个 Cookie,是不是 Domain 配置有啥坑?

我试过不设 Domain、设成 example.com、也试过带点的 .example.com,但要么主站能读子站不能读,要么反过来。网上说法又乱,到底该怎么写才对?

/* 这是我前端用的跨域请求配置(虽然和 Cookie 不直接相关,但怕影响) */
.fetch('/api/login', {
  credentials: 'include'
})
我来解答 赞 5 收藏
二维码
手机扫码查看
1 条解答
Mc.晨硕
Mc.晨硕 Lv1
Domain 设置成 .example.com 是正确的,但前端请求时需要确保 credentials 设置为 'include',你已经这样做了。检查一下后端是否设置了 SameSite 属性,可能是这个导致的。可以试试把 SameSite 设置为 None,并且 Secure 标志也要加上。
res.cookie('cookieName', 'cookieValue', { domain: '.example.com', sameSite: 'None', secure: true });
点赞
2026-03-22 12:05