Coś o Expires i Cache-Control Header

Dwie najważniejsze zasady:

  1. Dla elementów statycznych ustawiamy nagłówek Expires na daleki w przyszłość
  2. Dla treści dynamicznej korzystamy z Cache-Control (wszystkie najpopularniejsze przeglądarki posiadają pamieć podręczną w której przechowują strony – dlaczego z tego nie skorzystać?


Strony internetowe są bardzo często bogate w wszelkiego rodzaju dodatki mające na celu uatrakcyjnić jej wygląd. Pliki css, js, obrazki, flash – elementów tego typu w dzisiejszym internecie przybywa. Użytkownik wchodząc na stronę po raz pierwszy ‘musi’ dokonać pewnej liczby zapytań HTTP, ale ostawiając odpowiednie ‘Expires’ powodujemy ze strona staje się cachowalna. Dzięki czemu, ten sam użytkownik, który własnie odwiedził nasza stronę po raz pierwszy, wchodząc na kolejne podstrony pobiera już mniej danych, ponieważ sprytna przeglądarką pobiera teraz część elementów nie z internetu a z własnej pamięci podręcznej. Tego nagłówka najczęściej używa się obrazków jednak powinniśmy go stosować również dla stylów, skryptów i elementów flash.

Przegladarki internetowe i serwery proxy używają pamięci podręcznej żeby zredukować liczbę i wielkość zapytan HTTP, przyczyniają się tym samym do szybszego ładowania sie stron. Serwer www uzywa naglowka Expires w odpowiedzi HTTP aby powiedziec klientowi który z elementów może być przechowywany lokalnie.
Jeśli serwerem z którego korzystasz jest Apache polecam użycie dyrektywy ExpiresDefault. Ustawiamy nia Expires relatywnie do aktualnej daty, np:

ExpiresDefault „access plus 5 years”

Musisz pamiętać, ze używając dalko wysuniętych w przyszłość wartości, należy za każdym razem, kiedy chcesz zmienić pewien element (np poprawić coś w pliku css, czy wgrać nowy obrazek) zmienić mu nazwę! Tylko wtedy przeglądarka czy serwer proxy pobiorą go ponownie.

Podziel się: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • StumbleUpon
  • del.icio.us
  • Gwar
  • TwitThis
  • Facebook
  • Wykop
poniedziałek, Kwiecień 19th, 2010 Optymalizacja
zdjęcie

Wojciech Wierzgacz
Kraków, Małopolskie, Polska
e-mail: wojtek.ww@gmail.com
Telefon (8:00 - 18:00): 604883034


Koder PHP z trzyletnim doświadczeniem, student zaoczny informatyki stosowanej. Nawiążę współpracę, podejmę się realizacji projektów. Jestem samoukiem i lubię to co robię.

mapa strony