Путь cookie и его доступность к страницам подпапок - PullRequest
62 голосов
/ 23 февраля 2009

Допустим, у меня есть сайт с доменом: www.example.com

Если я установлю файл cookie с путем ' / ', файл cookie будет доступен через все страницы домена, например:

  • www.example.com / page1.html
  • www.example.com / subfolder1 / page1.html
  • www.example.com / subfolder1 / moresubfolder1 / page1.html и т. Д.

Что, если мы установим для файла cookie путь ' / subfolder1 ', будет ли файл cookie доступен для любой страницы или подпапки в папке? Например:

  • www.example.com / subfolder1 / moresubfolder / page1.html

Так что, если нет, я думаю, у меня нет выбора, кроме как использовать путь '/' для этих файлов cookie, верно?

Ответы [ 3 ]

62 голосов
/ 23 февраля 2009

Если для файла cookie указать путь '/ subfolder1' , будет ли файл cookie доступен для любой страницы или подпапки в папке?

Да. Файл cookie будет доступен для всех страниц и подкаталогов в пределах пути /subfolder1.

12 голосов
/ 14 июля 2014

, если мы установили для cookie путь /subfolder1, в этом примере доступны следующие страницы:

www.example.com / subfolder1 / page1.html
www.example.com/subfolder1/moresubfolder1/page1.html
и т.д.

Однако страница www.example.com/page1.html не будет доступна, поскольку она не принадлежит разрешенному пути.

8 голосов
/ 13 мая 2016

Чтобы устранить некоторую двусмысленность путем повторного использования части этого ответа:

Путь пути запроса соответствует заданному пути cookie, если хотя бы один из выполняются следующие условия:

  • Путь cookie и путь запроса идентичны.
  • Cookie-путь - это префикс пути запроса, а последний символ пути cookie -% x2F ("/").
  • Cookie-путь - это префикс пути запроса и первый символ пути запроса, который не включен в cookie-
    путь - это символ% x2F ("/").

Существует небольшая (но потенциально важная) разница между установкой файла cookie для пути /subfolder1 и пути /subfolder1/.

Если вы полагаетесь на первое, ваш путь запроса должен начинаться с символа "% x2F (" / ")" (косая черта), чтобы гарантировать желаемое поведение. Для примера взгляните на связанный ответ.

Если просто указать путь к cookie-файлам /, это позволит избежать любых крайних случаев, но, как вы говорите, cookie-файл будет доступен для всего домена.

...