假设我有一个域名网站:www.example.com
如果我使用路径“ / ”设置Cookie,则可以通过域中的所有页面访问Cookie,例如:
如果我们将Cookie设置为路径“ / subfolder1 ”,该Cookie是否可用于该文件夹下的任何页面或子文件夹?例如:
所以,如果没有,我想,我别无选择,只能对这些cookie使用路径'/',对吗?
答案 0 :(得分:62)
如果我们将Cookie设置为路径'/ subfolder1',那么该Cookie是否可用于该文件夹下的任何页面或子文件夹?
是。 Cookie 将可供所有页面和子目录使用。
答案 1 :(得分:12)
如果我们将cookie设置为路径/subfolder1
,则可以访问示例中的以下页面:
www.example.com/subfolder1/page1.html
www.example.com/subfolder1/moresubfolder1/page1.html
等
但是,页面www.example.com/page1.html
将无法访问,因为它不属于允许的路径。
答案 2 :(得分:8)
通过重复使用this回答的一部分来消除一些歧义:
请求路径路径 - 如果至少有一个路径匹配给定的cookie路径 以下条件成立:
- cookie路径和请求路径完全相同。
- cookie-path是请求路径的前缀,cookie路径的最后一个字符是%x2F(“/").
- cookie-path是请求路径的前缀,以及请求路径中未包含在cookie中的第一个字符 -
path是%x2F(“/”)字符。
在/subfolder1
路径和/subfolder1/
路径上设置Cookie之间存在轻微(但可能很重要)的区别。
如果你依赖前者,你的请求路径需要以“%x2F(”/“)字符”(正斜杠)开头,以保证所需的行为。例如,看看链接的答案。
将Cookie路径设置为简单/
可以避免任何边缘情况,但正如您所说 - 可以在整个域中访问Cookie。