cookie的domin path

domain属性

作用

定义 Cookie 的有效域名,浏览器仅在请求该域名或其子域名时发送 Cookie。

语法

http

ini 复制代码
Set-Cookie: cookieName=cookieValue; Domain=example.com

规则

  • 默认值 :若未指定Domain,Cookie 仅在当前域名下有效。
  • 子域名继承 :设置Domain=example.com后,所有子域名(如www.example.com、mail.example.com)均可访问该 Cookie。
  • 跨域限制 :不能设置为其他网站的域名(如Domain=google.com无效)。

典型场景

  • 多子域名共享用户信息 :如主站example.com和子站blog.example.com共享用户登录状态。
  • 单点登录(SSO) :多个子系统通过相同Domain的 Cookie 实现统一认证。

2. path属性

作用

定义 Cookie 的有效 URL 路径,浏览器仅在请求路径匹配时发送 Cookie。

语法

http

ini 复制代码
Set-Cookie: cookieName=cookieValue; Path=/admin

规则

  • 路径匹配 :路径需完全匹配或为父路径。例如,Path=/admin时,/admin和/admin/settings路径会携带 Cookie,但/user路径不会。
  • 默认值 :若未指定Path,默认使用当前页面的路径。
  • 路径优先级:同名 Cookie 中,路径更具体的优先级更高。

典型场景

  • 限制管理后台 Cookie :将管理后台的敏感 Cookie 设置为Path=/admin,避免普通页面泄露。
  • 分离功能模块 :不同业务模块(如/api和/web)使用独立的 Cookie 路径。

3. 组合使用

示例配置 有效范围
Domain=example.com; Path=/ 所有子域名的所有路径
Domain=example.com; Path=/pay *.example.com/pay及子路径
Domain=www.example.com; Path=/ 仅www.example.com的所有路径

4. 注意事项

  • 安全性 :避免设置过大的Domain或Path(如Domain=.com),防止 Cookie 被其他网站滥用。
  • 跨域问题 :若前端与后端部署在不同子域名,需通过Domain配置共享 Cookie。
  • 与SameSite的协同 :SameSite控制跨站请求是否携带 Cookie,而domain和path控制同一站的不同子域名 / 路径的可见性。

5. 最佳实践

  1. 最小化作用域:仅将 Cookie 暴露给必要的域名和路径。

  2. 敏感 Cookie 的隔离 :如管理后台的 Cookie 设置Path=/admin,并配合Secure和HttpOnly。

  3. 跨子域名共享 :通过Domain配置实现单点登录,但需谨慎评估风险。

相关推荐
JustHappy几秒前
「vConsole MCP🛠️」我让 AI 直接看见任何 H5 的日志和请求帮你 debug
前端·javascript·程序员
codeGoogle26 分钟前
Vue3 UIKit 实战:把聊天、会话、主题和移动端适配全部封装好
前端
大龄秃头程序员1 小时前
iOS Method Swizzling 的工程化实践:如何处理多重交换与第三方冲突
前端
liangshanbo12151 小时前
Webpack 文件指纹面试题整理
前端·webpack·node.js
xieter1 小时前
【技术精选】Node.js 核心事件循环机制与异步 I/O 深度剖析 (2026-10-02)
前端·javascript
计算机魔术师2 小时前
Ethan Mollick 谈点与群:智能体自组织为何让管理假设失效
前端
故七月2 小时前
GEO 信源评估体系:如何判断一条网页信源能否被大模型采信
前端·网络·人工智能
liangshanbo12152 小时前
Webpack 常见 Plugin 面试题
前端·webpack·node.js
xxwl5852 小时前
vue3的入门学习
前端·vue.js·学习
用户847172102842 小时前
.shot 文件格式规范
前端·后端