Dispatcher-hostconfiguratie
Deze optie is de aanbevolen methode voor het inschakelen van caching, maar is alleen beschikbaar voor publicatie in AEM. Als u de cachekoppen wilt bijwerken, gebruikt u de instructies mod_headers
module en <LocationMatch>
in het hostbestand van Apache HTTP Server. De algemene syntaxis ziet er als volgt uit:
<LocationMatch "$URL$ || $URL_REGEX$">
# Removes the response header of this name, if it exists. If there are multiple headers of the same name, all will be removed.
Header unset Cache-Control
Header unset Surrogate-Control
Header unset Expires
# Instructs the web browser and CDN to cache the response for 'max-age' value (XXX) seconds. The 'stale-while-revalidate' and 'stale-if-error' attributes controls the stale state treatment at CDN layer.
Header set Cache-Control "max-age=XXX,stale-while-revalidate=XXX,stale-if-error=XXX"
# Instructs the CDN to cache the response for 'max-age' value (XXX) seconds. The 'stale-while-revalidate' and 'stale-if-error' attributes controls the stale state treatment at CDN layer.
Header set Surrogate-Control "max-age=XXX,stale-while-revalidate=XXX,stale-if-error=XXX"
# Instructs the web browser and CDN to cache the response until the specified date and time.
Header set Expires "Sun, 31 Dec 2023 23:59:59 GMT"
</LocationMatch>
Het volgende vat het doel van elke kopbal en toepasselijke attributen voor de kopbal samen.
Webbrowser | CDN | Beschrijving | |
---|---|---|---|
Cachebeheer | ✔ | ✔ | Deze header bepaalt de webbrowser en de CDN-cache. |
Surrogaatcontrole | ✘ | ✔ | Deze header bestuurt het CDN-cache-leven. |
Verloopt | ✔ | ✔ | Deze header bepaalt de webbrowser en de CDN-cache. |
- max-age: Dit attribuut controleert TTL of "tijd om"van de reactieinhoud in seconden te leven.
- schaal-terwijl-revalidate: Dit attribuut controleert de stapelstaat behandeling van de antwoordinhoud bij CDN laag wanneer ontvangen verzoek binnen de gespecificeerde periode in seconden is. De stapelstaat is de tijdperiode nadat TTL is verlopen en alvorens de reactie opnieuw wordt bevestigd.
- schaal-als-fout: Dit attribuut controleert de stapelstaat behandeling van de antwoordinhoud bij CDN laag wanneer de oorsprongsserver niet beschikbaar is en ontvangen verzoek binnen de gespecificeerde periode in seconden is.
Herzie de staleness en herbevestigingdetails voor meer informatie.
Voorbeeld
Om het Webbrowser en CDN geheim voorgeheugenleven van het inhoudstype van HTML aan 10 minuten zonder de behandeling van de stapelstaat te verhogen, volg deze stappen:
-
Zoek in uw AEM-project het gewenste vhst-bestand in de map
dispatcher/src/conf.d/available_vhosts
. -
Werk het vhost-bestand (bijvoorbeeld
wknd.vhost
) als volgt bij:<LocationMatch "^/content/.*\.(html)$"> # Removes the response header if present Header unset Cache-Control # Instructs the web browser and CDN to cache the response for max-age value (600) seconds. Header set Cache-Control "max-age=600" </LocationMatch>
De gastheerdossiers in
dispatcher/src/conf.d/enabled_vhosts
folder zijn symlinks aan de dossiers indispatcher/src/conf.d/available_vhosts
folder, zodat zorg ervoor om tot symlinks te leiden als niet aanwezig. -
Stel de vhost veranderingen in het gewenste milieu van AEM as a Cloud Service op gebruikend Cloud Manager - de Pijpleiding van Config van de Rij van het Webof RDE bevelen.
Als u echter verschillende waarden wilt hebben voor de webbrowser en de levensduur van de CDN-cache, kunt u de header Surrogate-Control
in het bovenstaande voorbeeld gebruiken. Op dezelfde manier kunt u de header Expires
gebruiken om de cache op een bepaalde datum en tijd te laten verlopen. Met de kenmerken stale-while-revalidate
en stale-if-error
kunt u ook de manier bepalen waarop de status van de reactie-inhoud in de schaal wordt verwerkt. Het project van AEM WKND heeft de de staatsbehandeling van de a verwijzingssteenCDN geheim voorgeheugenconfiguratie.
Op dezelfde manier kunt u de cachekoppen ook bijwerken voor andere inhoudstypen (JSON, JS, CSS en Assets).