Cytując z tego samego RFC2109, który czytasz:
* Zestaw plików cookie z hosta żądania x.foo.com dla domeny = .foo.com
być uznanym.
Więc subdomain.example.com
można ustawić plik cookie dla .example.com
. Jak na razie dobrze.
Poniższe zasady dotyczą wyboru odpowiednich wartości plików cookie
spośród wszystkich plików cookie, które posiada agent użytkownika.
Wybór domeny
W pełni kwalifikowana nazwa hosta serwera źródłowego musi być zgodna z domeną
atrybut domeny pliku cookie
Czy mamy dopasowanie do domeny?
* A jest ciągiem FQDN i ma postać NB, gdzie N jest niepustą nazwą
ciąg, B ma postać .B ', a B' jest ciągiem FQDN. (Więc, Xycom
dopasowanie do domeny .y.com, ale nie y.com).
Ale teraz example.com
nie pasuje .example.com
do domeny zgodnie z definicją. Ale www.example.com
(lub jakakolwiek inna „niepusta nazwa” w domenie) by to zrobiła. Te RFC są teoretycznie nieaktualne przez RFC2965 , który dyktuje rzeczy o wymuszaniu wiodącej kropki dla domen w Set-Cookie2
operacjach.
Ważniejszy, jak zauważa @Tony, jest świat rzeczywisty. Aby rzucić okiem na to, co robią faktyczne programy użytkownika, zobacz
NsCookieService.cpp Firefoksa 3
i
Plik cookie_monster.cc w Chrome
Dla perspektywy co do rzeczywistych miejsc robią spróbuj grać z wget
użyciem --save-cookies
, --load-cookies
i --debug
zobaczyć, co się dzieje.
Prawdopodobnie przekonasz się, że w rzeczywistości większość witryn używa kombinacji Set-Cookie
starszych specyfikacji RFC z wartościami „Host”, domyślnie bez początkowej kropki (jak robi to twitter.com ) lub ustawiania wartości domeny (z kropką wiodącą) i przekierowywania na serwer taki jak www.example.com
(jak google.com ).