Cookiepath及其对子文件夹页面的可访问性
假设我有一个域名为www.example.com的网站
如果我使用path“ / ”设置cookie,那么可以通过域中的所有页面访问cookie,例如:
- www.example.com/page1.html
- www.example.com/subfolder1/page1.html
- www.example.com/subfolder1/moresubfolder1/page1.html等
如果我们将cookie设置为path“ / subfolder1 ”,那么该cookie是否可用于该文件夹下的任何页面或子文件夹? 例如:
- www.example.com/subfolder1/moresubfolder/page1.html
所以,如果没有,我想,我别无select,只能使用path“/”这些cookie,对吧?
如果我们将cookie设置为path“/ subfolder1” ,cookie是否可用于文件夹下的任何页面或子文件夹?
是。 该cookie 将可用于所有页面和子目录。
如果我们将cookie设置为path /subfolder1
,则可以访问示例中的以下页面:
http://www.example.com/subfolder1/page1.html
http://www.example.com/subfolder1/moresubfolder1/page1.html
等等
但是, www.example.com/page1.html
页面将不可访问,因为它不属于允许的path。
通过重新使用这个答案的一部分来消除一些不明确的地方:
如果以下至less一个条件成立,请求pathpath将匹配给定的Cookiepath:
- cookiepath和请求path是相同的。
- cookiepath是请求path的前缀,cookiepath的最后一个字符是%x2F(“/”)。
- Cookiepath是请求path的前缀,并且不包括在cookie中的请求path的第一个字符 –
path是%x2F(“/”)字符。
在/subfolder1
path和/subfolder1/
path之间设置一个cookie之间有一点(但可能很重要)的区别。
如果您依赖前者,则您的请求path需要以“%x2F(”/“)字符”(正斜杠)开始,以保证所需的行为。 举一个例子,看看链接的答案。
设置cookiepath简单/
避免任何边缘情况,但正如你所说 – cookie可以访问整个域。