Nếu bạn đã tìm hiểu về lập trình Web động, chắc hẳn bạn rất quen thuộc với khái niệm cookie. Cookie nói đơn giản là 1 biến chứa thông tin văn bản và sẽ được lưu trữ ở trình duyệt trên máy người dùng. Cookie thường lưu trữ thông tin về tài khoản đăng nhập, mật khẩu, thông tin cấu hình người dùng và các thông tin khác. Giả sử, bạn đã đăng nhập 1 forum bằng username và password, sau đó chọn chế độ ghi nhớ tài khoản bằng cookie. Vài tiếng sau, bạn vào lại chính forum đó thì forum sẽ tự động chuyển bạn đến trang người dùng đã đăng nhập mà bạn không cần phải đăng nhập lại.
Cookie có đặc điểm là dung lượng lưu trữ nhỏ vì vậy các nhà phát triển đôi khi phải gửi dữ liệu trong nhiều cookie để tăng dung lượng có thể gửi. Cookie được lưu trữ ở máy người dùng (client machine) vì vậy website sẽ tiết kiệm được lượng dung lượng phải lưu trữ ở server. Cũng vì lý do lưu trữ ở máy người dùng, cookie không được xem là bảo mật tốt bằng session, một biến được lưu trữ phía server.
Đối với tư cách là một lập trình viên, bạn nên biết có bao nhiêu cookie có thể sử dụng ở 1 website. Hầu hết trình duyệt hiện nay đều giới hạn số lượng cookie tối đa có thể sử dụng trên 1 tên miền (website). Mức tối thiểu số lượng cookie được định nghĩa theo tiêu chuẩn RFC, tuy nhiên các nhà phát triển trình duyệt có khả năng số lượng này.
Tiêu chuẩn RFC về cookie
RFC 2109 định nghĩa cách các cookie hoạt động và số lượng cookie tối đa mà các trình duyệt nên hỗ trợ. Theo tiêu chuẩn này, các trình duyệt sẽ không có giới hạn nào về kích thước (dung lượng) và số lượng cookie, nhưng ít nhất phải đạt các đặc tả sau:
- Ít nhất phải hỗ trợ số lượng tổng là 300 cookie
- Ít nhất 20 cookie trên 1 đơn vị host hoặc tên miền
Trên thực tế, các nhà phát triển trình duyệt giới hạn tổng số lượng cookie trên 1 domain hoặc 1 host cũng như tổng số cookie trên 1 máy tính khác nhau.
Lưu ý khi thiết kế website chứa cookie
Tất cả trình duyệt, từ phổ biến cho đến ít phổ biến, đều hỗ trợ một lượng lớn cookie. Vì vậy, nếu bạn có phát triển web nhiều domain, bạn không cần quan tâm nhiều đến cookie vì số lượng cookie tối đa là rất nhiều để bạn có thể sử dụng. Tuy nhiên, nếu bạn có nhiều ứng dụng web chỉ chạy trên 1 domain, bạn cần lưu tâm kỹ về số lượng cookie. Trình duyệt Chrome và Safari cho phép sử dụng nhiều cookie hơn trình duyệt Firefox, Opera và Internet Explorer. Để an toàn, tốt nhất một domain nên sử dụng tối đa từ 30 đến 50 cookie.
Giới hạn kích thước cookie trên từng domain
Ngoài giới hạn về số lượng, cookie còn bị giới hạn về dung lượng sử dụng trên các trình duyệt. Ví dụ, trình duyệt giới hạn số lượng cookie là 50 và dung lượng là 4096 byte (4KB) thì nếu bạn sử dụng 2 cookie, thì dung lượng tổng của 2 cookie chỉ là 4KB. Bạn có thể dùng 2 cookie với dung lượng: 1KB và 3KB hoặc 2KB và 2KB là đáp ứng tiêu chí.
Tuy nhiên, một số trình duyệt lại không có giới hạn về kích thước cookie, chẳng hạn:
- Chrome và Firefox không có giới hạn về dung lượng trên mỗi domain.
- Internet Explorer cho phép dung lượng từ 4096 đến tối đa là 10234 byte.
- Opera và Safari chỉ cho phép dung lượng cookie tối đa là 4096 byte.
Để tương thích mọi trình duyệt, DAMMIO khuyên bạn nên chỉ tạo tối đa 30 cookie và tổng dung lượng các cookie chỉ tối đa là 4KB.
- APA:
Dammio. (2018). Có thể sử dụng tối đa bao nhiêu cookie trên 1 website?. https://www.dammio.com/2018/11/28/co-the-su-dung-toi-da-bao-nhieu-cookie-tren-1-website.
- BibTeX:
@misc{dammio,
author = {Dammio},
title = {Có thể sử dụng tối đa bao nhiêu cookie trên 1 website?},
year = {2018},
url = {https://www.dammio.com/2018/11/28/co-the-su-dung-toi-da-bao-nhieu-cookie-tren-1-website},
urldate = {2024-10-07}
}