Δημοσίευση εικόνων που μπορεί να επαναχρησιμοποιήσει ένας κοινόχρηστος διακομιστής μεσολάβησης
Δώστε στις δημόσια επαναχρησιμοποιήσιμες απαντήσεις εικόνων ρητή διάρκεια φρεσκάδας και επικυρωτές και, στη συνέχεια, ερμηνεύστε την επαναφόρτωση του προγράμματος περιήγησης ξεχωριστά από την κανονική επαναχρησιμοποίηση της προσωρινής μνήμης.
Για μια απάντηση εικόνας που μεταφέρεται μέσω κοινόχρηστης προσωρινής μνήμης ορατής στο HTTP, δημοσιεύστε ρητή διάρκεια και έναν επικυρωτή. Όταν η εικόνα είναι ασφαλές να επαναχρησιμοποιηθεί μεταξύ χρηστών, ενδεικτικές κεφαλίδες απόκρισης είναι:
Cache-Control: public, max-age=604800
ETag: "image-v4"
Η διάρκεια είναι σε δευτερόλεπτα· το 604800 είναι μία εβδομάδα. Χρησιμοποιήστε το public μόνο για περιεχόμενο που προορίζεται για επαναχρησιμοποίηση μεταξύ χρηστών.
Αν το πρόγραμμα περιήγησης και ο κοινόχρηστος διακομιστής μεσολάβησης χρειάζονται διαφορετικές διάρκειες, το s-maxage παρέχει τη διάρκεια της κοινόχρηστης προσωρινής μνήμης. Για παράδειγμα, το max-age=3600 με s-maxage=604800 δίνει στην κοινόχρηστη προσωρινή μνήμη τη μεγαλύτερη περίοδο φρεσκάδας.
Το Expires είναι ημερομηνία, όχι διάρκεια
Το Expires δέχεται χρονική σήμανση σε μορφή ημερομηνίας HTTP. Το max-age υπερισχύει αυτού του πεδίου και το s-maxage έχει προτεραιότητα για τις κοινόχρηστες προσωρινές μνήμες. Δημιουργήστε οποιαδήποτε ημερομηνία Expires κατά την παραγωγή της απόκρισης.
Μια επαναφόρτωση μπορεί να ζητήσει επικύρωση
Ένα αίτημα που περιέχει Cache-Control: no-cache ζητά επιτυχή επικύρωση στην πηγή πριν επαναχρησιμοποιηθεί μια αποθηκευμένη απόκριση. Αυτό μπορεί να συμβεί ακόμη και όταν η συνήθης πολιτική φρεσκάδας της απόκρισης θα επέτρεπε διαφορετικά την επαναχρησιμοποίηση.
Ο επικυρωτής επιτρέπει στην προσωρινή μνήμη να ελέγχει αποτελεσματικά μια αμετάβλητη εικόνα. Μια απόκριση 304 μπορεί να επιβεβαιώσει την αποθηκευμένη αναπαράσταση χωρίς να μεταδώσει ξανά τα byte της εικόνας από την πηγή. Επομένως, η κίνηση προς την πηγή δεν σημαίνει από μόνη της ότι το αντικείμενο στην προσωρινή μνήμη απορρίφθηκε.
Συγκρίνετε την κανονική επαναχρησιμοποίηση και τις ρητές επαναφορτώσεις όταν εξετάζετε την πολιτική.