Xuất bản hình ảnh mà proxy dùng chung có thể tái sử dụng
Cấp cho các phản hồi hình ảnh có thể tái sử dụng công khai thời hạn tươi mới rõ ràng và trình xác thực, sau đó diễn giải việc tải lại của trình duyệt tách biệt khỏi việc tái sử dụng bộ nhớ đệm thông thường.
Đối với phản hồi hình ảnh đi qua bộ nhớ đệm dùng chung mà HTTP nhìn thấy được, hãy công bố thời hạn rõ ràng và một trình xác thực. Khi hình ảnh an toàn để tái sử dụng giữa các người dùng, các tiêu đề phản hồi mẫu là:
Cache-Control: public, max-age=604800
ETag: "image-v4"
Thời hạn tính bằng giây; 604800 là một tuần. Chỉ dùng public cho nội dung nhằm tái sử dụng giữa các người dùng.
Nếu trình duyệt và proxy dùng chung cần thời hạn khác nhau, s-maxage cung cấp thời hạn của bộ nhớ đệm dùng chung. Ví dụ, max-age=3600 với s-maxage=604800 cho bộ nhớ đệm dùng chung khoảng thời gian tươi mới dài hơn.
Expires là một ngày, không phải khoảng thời gian
Expires nhận dấu thời gian theo định dạng ngày HTTP. max-age ghi đè trường đó, và s-maxage được ưu tiên cho bộ nhớ đệm dùng chung. Hãy tạo bất kỳ ngày Expires nào khi tạo phản hồi.
Tải lại có thể yêu cầu xác thực
Yêu cầu chứa Cache-Control: no-cache yêu cầu xác thực thành công tại nguồn trước khi phản hồi đã lưu được tái sử dụng. Điều đó có thể xảy ra ngay cả khi chính sách tươi mới thông thường của phản hồi nếu không thì vẫn cho phép tái sử dụng.
Trình xác thực cho phép bộ nhớ đệm kiểm tra hình ảnh không thay đổi một cách hiệu quả. Phản hồi 304 có thể xác nhận biểu diễn đã lưu mà không truyền lại các byte hình ảnh từ nguồn. Vì vậy, lưu lượng đến nguồn tự nó không có nghĩa là đối tượng trong bộ nhớ đệm đã bị loại bỏ.
So sánh việc tái sử dụng thông thường và việc tải lại rõ ràng khi xem xét chính sách.