Statinio turinio kešavimas
Statinį svetainės turinį, kuris niekada arba beveik niekada nesikeičia, galima saugoti laikinoje lankytojų naršyklių atmintyje (angl. cache). Taip galima juntamai pagreitinti svetainės užkrovimą pakartotinai grįžtantiems lankytojams, nes dalies turinio (paveikskėliai, css failai, javascript'ai ir pan.) nebereikia pakartotinai siųsti iš serverio.
Galiojimo laikas nustatomas modulio mod_expires pagalba. Visos taisyklės tiesiog įrašomos į .htaccess failą, kuris paprastai yra arba pagrindiniame svetainės kataloge /public_html/. Jei šio failo nėra - jį galite tiesiog sukurti.
Turinys
mod_expires naudojimas
Taisyklės rašomos aktyvavus mod_expires modulį, tai atliekama taip:
<IfModule mod_expires.c> ExpiresActive on </IfModule>
Turinio galiojimo laikas nustatomas nurodant kiek laiko, po atidarymo, jį reikia saugoti. Pvz. Jei visus jpg paveikslėlius galima saugoti vieną mėnesį, reikėtų rašyti:
ExpiresActive on ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpg
- Nurodomas failo tipas ir plėtinys
- "access plus 1 month"
- Nurodoma, kad failą kešuoti vienam mėnesiui
galiojimo laikas gali būti nustatomas metų, mėnesių, savaičių, dienų, valandų, minučių ir sekundžių tikslumu, pvz.:
ExpiresActive on ExpiresByType image/png "access plus 1 year" ExpiresByType application/pdf "access plus 1 month" ExpiresByType text/x-javascript "access plus 3 days" ExpiresByType application/x-shockwave-flash "access plus 1 hour"
Optimalų laikotarpį galima nustatyti žinant kaip svetainė veikia, tačiau bendru atveju paveikslėliai, audio ar video medžiaga gali galioti ilgai, css failai ar javascript'ai kiek trumpiau.
Pavyzdys
<IfModule mod_expires.c> ExpiresActive on #paveiksleliai ExpiresByType image/jpg "access plus 60 days" ExpiresByType image/png "access plus 60 days" ExpiresByType image/gif "access plus 60 days" ExpiresByType image/jpeg "access plus 60 days" #css failai ExpiresByType text/css "access plus 1 days" # favicon paveikslelis ExpiresByType image/x-icon "access plus 1 month" # PDF, audio, video failai ExpiresByType application/pdf "access plus 1 month" ExpiresByType audio/x-wav "access plus 1 month" ExpiresByType audio/mpeg "access plus 1 month" ExpiresByType video/mpeg "access plus 1 month" ExpiresByType video/mp4 "access plus 1 month" ExpiresByType video/quicktime "access plus 1 month" ExpiresByType video/x-ms-wmv "access plus 1 month" ExpiresByType application/x-shockwave-flash "access 1 month" # javascript ExpiresByType text/javascript "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" </IfModule>
Šiuo atveju ilgiausiai (2 mėnesius) galioja paveikslėliai, tuomet vieną mėnesį PDF failai ir video/audio turinys. Vieną savaitę galioja javascript'ai ir tik vieną dieną galioja CSS failas.
Gerokai išsamesnę informaciją apie mod_expires naudojimą galite rasti modulio dokumentacijoje: Apache mod_expires