2 tên miền mydomain.com
và subdomain.mydomain.com
chỉ có thể chia sẻ cookie nếu tên miền được đặt tên rõ ràng trong Set-Cookie
tiêu đề. Mặt khác, phạm vi của cookie được giới hạn trong máy chủ yêu cầu. (Điều này được gọi là "cookie chỉ dành cho máy chủ". Xem cookie chỉ dành cho máy chủ là gì? )
Ví dụ: nếu bạn đã gửi tiêu đề sau từ subdomain.mydomain.com
thì cookie sẽ không được gửi cho các yêu cầu tới mydomain.com
:
Set-Cookie: name=value
Tuy nhiên, nếu bạn sử dụng như sau, nó sẽ có thể sử dụng được trên cả hai miền:
Set-Cookie: name=value; domain=mydomain.com
Cookie này sẽ được gửi cho bất kỳ tên miền phụ nào của mydomain.com, bao gồm các tên miền phụ được lồng như thế nào subsub.subdomain.mydomain.com
.
Trong RFC 2109 , một tên miền không có dấu chấm hàng đầu có nghĩa là nó không thể được sử dụng trên các tên miền phụ và chỉ một dấu chấm hàng đầu ( .mydomain.com
) sẽ cho phép nó được sử dụng trên nhiều tên miền phụ (nhưng không phải là tên miền cấp cao nhất, vì vậy những gì bạn hỏi là không thể trong thông số cũ hơn).
Tuy nhiên, tất cả các trình duyệt hiện đại đều tôn trọng thông số kỹ thuật mới hơn RFC 6265 và sẽ bỏ qua mọi dấu chấm hàng đầu, nghĩa là bạn có thể sử dụng cookie trên tên miền phụ cũng như tên miền cấp cao nhất.
Tóm lại, nếu bạn đặt cookie như ví dụ thứ hai ở trên mydomain.com
, nó sẽ có thể truy cập được subdomain.mydomain.com
và ngược lại. Điều này cũng có thể được sử dụng để cho phép sub1.mydomain.com
và sub2.mydomain.com
chia sẻ cookie.
Xem thêm: