Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 11950|Απάντηση: 0

[Ιστοσελίδα O&M] Βελτιστοποίηση απόδοσης ιστότοπου: Λεπτομερής επεξήγηση των ρυθμίσεων ελέγχου της προσωρινής μνήμης

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 7/9/2015 7:30:51 μ.μ. | | | |


Λήξη κεφαλίδας HTTP και έλεγχος προσωρινής μνήμης


1. Έννοια

Το cache-control χρησιμοποιείται για τον έλεγχο της προσωρινής αποθήκευσης HTTP (μπορεί να μην εφαρμοστεί εν μέρει στο HTTP/1.0, μόνο το Pragma: no-cache υλοποιείται)

Μορφή στο πακέτο:

Cache-Control: cache-directive

cache-directive μπορεί να είναι η ακόλουθη:

Αίτημα:
| "χωρίς κρυφή μνήμη"
| "χωρίς κατάστημα"
| "μέγιστη ηλικία" "=" δέλτα-δευτερόλεπτα
| "max-stale" [ "=" δέλτα-δευτερόλεπτα ]
| "min-fresh" "=" δέλτα-δευτερόλεπτα
| "Μη-μετασχηματισμός"
| "μόνο αν-αποθηκευμένο"
| "προσωρινή επέκταση"


Απάντηση:
| "δημόσιο"
| "private" [ "=" <"> όνομα πεδίου <"> ]
| "no-cache" [ "=" <"> όνομα πεδίου <"> ]
| "χωρίς κατάστημα"
| "Μη-μετασχηματισμός"
| "Πρέπει να επανεπικυρωθεί"
| "διακομιστής μεσολάβησης-επανεπικύρωση"
| "μέγιστη ηλικία" "=" δέλτα-δευτερόλεπτα
| "s-maxage" "=" δέλτα-δευτερόλεπτα
| "προσωρινή επέκταση"

Μέρος της περιγραφής:
Χωρίζεται σε κρυφή μνήμη ή όχι
Το Public υποδεικνύει ότι η απόκριση μπορεί να αποθηκευτεί προσωρινά από οποιαδήποτε περιοχή cache.
Το Private δηλώνει ότι δεν είναι δυνατή η επεξεργασία ολόκληρου ή μέρους του μηνύματος απάντησης ενός χρήστη από την κοινόχρηστη μνήμη cache. Αυτό επιτρέπει στον διακομιστή να περιγράφει μόνο πότε ο χρήστης είναι
Μήνυμα μερικής απάντησης, το οποίο δεν είναι έγκυρο για αιτήματα από άλλους χρήστες.
Το no-cache υποδεικνύει ότι το αίτημα ή το μήνυμα απάντησης δεν μπορεί να αποθηκευτεί προσωρινά (το HTTP/1.0 αντικαθίσταται με το no-cache του Pragma)
Σύμφωνα με το τι μπορεί να αποθηκευτεί προσωρινά
Το No-store χρησιμοποιείται για να αποτρέψει την ακούσια δημοσίευση σημαντικών πληροφοριών. Η αποστολή ενός μηνύματος αιτήματος θα κάνει τα μηνύματα αιτήματος και απάντησης να μην αποθηκεύονται στην προσωρινή μνήμη.
Χρονικό όριο σύμφωνα με την κρυφή μνήμη
Η μέγιστη ηλικία υποδεικνύει ότι ο πελάτης μπορεί να λάβει μια απάντηση με διάρκεια ζωής όχι μεγαλύτερη από έναν καθορισμένο χρόνο (σε δευτερόλεπτα).
Το min-fresh υποδεικνύει ότι ο υπολογιστής-πελάτης μπορεί να λάβει μια απάντηση με χρόνο απόκρισης μικρότερο από τον τρέχοντα χρόνο συν τον καθορισμένο χρόνο.
Η λέξη max-jale υποδεικνύει ότι ο υπολογιστής-πελάτης μπορεί να λάβει μηνύματα απάντησης πέρα από την περίοδο χρονικού ορίου. Εάν καθορίσετε μια τιμή για το μήνυμα max-jale, τότε ο υπολογιστής-πελάτης μπορεί να
Λάβετε μηνύματα απάντησης που υπερβαίνουν την καθορισμένη τιμή της περιόδου υπερωριών.
Οι λήξεις αντιπροσωπεύουν τον χρόνο ύπαρξης, επιτρέποντας στον πελάτη να μην ελέγξει (να υποβάλει αίτημα) πριν από αυτόν τον χρόνο, που ισοδυναμεί με τη μέγιστη ηλικία
Αποτέλεσμα. Αλλά αν υπάρχουν ταυτόχρονα, αντικαθίστανται από τη μέγιστη ηλικία του Cache-Control.
Μορφή:
Expires = "Λήγει" ":" Ημερομηνία HTTP
Για παράδειγμα
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. Εφαρμογή
Ορίστε τη λήξη και τον έλεγχο της προσωρινής μνήμης μέσω META μέσω HTTP
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Expires" content="Mon, 20 Jul 2009 23:00:00 GMT" />
Οι παραπάνω ρυθμίσεις είναι απλώς παραδείγματα και μπορείτε πραγματικά να χρησιμοποιήσετε μία από αυτές. Εάν το γράψετε με αυτόν τον τρόπο, ισχύει μόνο για την ιστοσελίδα, όχι για εικόνες ή άλλα αιτήματα στην ιστοσελίδα και δεν θα κάνει καμία προσωρινή μνήμη.
Με αυτόν τον τρόπο, ο πελάτης θα έχει περισσότερα αιτήματα και παρόλο που είναι απλώς κάτι που ελέγχει την κατάσταση Τελευταία τροποποίηση, ο αριθμός των αιτημάτων σίγουρα θα επηρεάσει την ταχύτητα περιήγησης.
Εάν θέλετε να προσθέσετε προσωρινή μνήμη σε ένα αρχείο, μπορείτε να χρησιμοποιήσετε τη λειτουργική μονάδα mod_expire του Apache, η οποία γράφεται ως
<IfModule mod_expires.γ>
ΛήγειΕνεργό στις
ΛήγειΠροεπιλογή "πρόσβαση συν 1 ημέρες"
</IfModule>
Θυμάμαι ότι το ExpiresActive έχει ρυθμιστεί σε On, δεν το έβαλα στην αρχή και φαίνεται ότι όσο κι αν είναι το YSlow, δεν μπορώ να βρω τον μηχανισμό προσωρινής αποθήκευσης. Εάν το προσθέσετε έτσι, θα είναι προεπιλεγμένο σε όλα.
Εάν θέλετε να στοχεύσετε μεμονωμένους τύπους MIME, μπορείτε να κάνετε τα εξής:
ExpiresByType image/gif "πρόσβαση συν 5 ώρες 3 λεπτά"
Δείτε το Apache Module mod_expires
Επιπλέον, όταν κάνετε κλικ στο κουμπί Ανανέωση στο πρόγραμμα περιήγησης, οι αιτήσεις που αποστέλλονται από τον υπολογιστή-πελάτη είναι όλες max-age=0, υποδεικνύοντας ότι η αίτηση έχει επικυρωθεί και αποσταλεί στον διακομιστή
Εάν ζητήσετε να ελέγξετε την προσωρινή μνήμη και στη συνέχεια να ενημερώσετε την προσωρινή μνήμη, θα λάβετε γενικά το 304 Not Modified, πράγμα που σημαίνει ότι δεν υπάρχει καμία αλλαγή.






Προηγούμενος:Βρείτε θέσεις μερικής απασχόλησης και κερδίστε επιπλέον χρήματα Προσλάβετε εργαζόμενους μερικής απασχόλησης με άριστη μεταχείριση, διακανονισμό μετρητών, περισσότερους από 300 την ημέρα
Επόμενος:Όπως το ασαφές ερώτημα στο Linq σε sql
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com