🍪 Można ciasteczko?

Ta strona chce wykorzystywać pliki cookie do analizowania ruchu oraz mierzenia skuteczności i personalizacji reklam zgodnie z polityką prywatności. Zgadzasz się?

PORADNIKI

6 min. czytania

Kod HTTP 304 – Not modified

HTTP 304 – Not modified

Fot. MM

Co to jest kod odpowiedzi HTTP 304 – Not modified? Jak działa w praktyce i kiedy jest używany? Jak rozwiązać problemy związane z HTTP 304?

Spis treści
Serwer

Kod HTTP 304 nie jest najczęściej spotykanym kodem, odgrywa jednak istotną rolę. Warto z tego powodu wiedzieć, jakie jest jego zadanie i do czego można go wykorzystać. W domyśle powinien bowiem usprawniać działanie Twojego miejsca w sieci. Z jego pomocą może być ono jeszcze wygodniejsze i atrakcyjniejsze dla użytkowników. Co więcej, ma szansę działać sprawniej i szybciej dostarczać żądaną zawartość. Czasem jednak może się natomiast zdarzyć tak, że HTTP 304 zablokuje do niego dostęp odbiorcom. Wina za to może nawet nie być po Twojej stronie. Może wynikać po prostu z konfiguracji przeglądarki użytkownika końcowego. Warto natomiast w takich sytuacjach wiedzieć, co się dzieje i jakie to ma znaczenie dla witryny.

Co to jest kod HTTP 304 – Not Modified?

Jak dokładnie opisać rolę kodu HTTP, jakim jest przekierowanie 304 Not Modified? Najpierw warto skrótowo przybliżyć proces realizacji żądania internauty. Gdy wpisuje on adres strony w wyszukiwarce, ma ona za zadanie nawiązanie połączenia z serwerem. Co jednak, jeśli ma już w pamięci podręcznej (cache) daną witrynę? Wtedy musi najpierw zorientować się, czy posiada jej aktualną wersję. W tym celu wysyła żądanie „warunkowej weryfikacji”. Następnie porównuje swoją datę „ostatniej modyfikacji” z tą, którą przekaże jej serwer.

Co się dzieje, gdy zawartość plików przeglądarki oraz tych aktualnych jest taka sama? Serwer w takiej sytuacji wysyła w odpowiedzi na żądanie komunikat HTTP 304 Not Modified. To wskazanie dla wyszukiwarki, aby posługiwała się „swoją” kopią. Taka metoda w zamyśle ma sprawić, że witryny internetowe będą wczytywały się szybciej. Dzięki temu bowiem nie jest konieczne pobieranie za każdym razem zawartości strony internetowej z serwera.

Co się dzieje, jeśli przeglądarka nie ma aktualnej wersji plików? Wtedy są one po prostu ściągane na nowo i — ewentualnie — zapisywane znów w pamięci podręcznej. Serwer w takiej sytuacji wysyła kod HTTP 200. Użytkownikowi natomiast wyświetlana jest najnowsza wersja witryny.

Przekierowanie 304 w praktyce sprawia zatem, że do wyświetlenia strony nie jest potrzebne pobieranie jej plików. Wykorzystywany jest zapis obecny w przeglądarce, co przyśpiesza ładowanie. To zysk dla odbiorcy, bo nie musi zbyt długo czekać na realizację wprowadzonego żądania. Dostęp do konkretnego zasobu otrzymuje niemalże natychmiast. Działa to też na korzyść właściciela witryny. Stawia go to bowiem w dobrym świetle i przyciąga nowych użytkowników.

Kod HTTP 304 jest wspierany przez wszystkie najpopularniejsze przeglądarki internetowe:

  • Chrome,
  • Edge,
  • Firefox,
  • Opera,
  • Safari.

Można zatem wykorzystywać go na stronach, niezależnie od tego, na jakim sprzęcie są one zwykle otwierane przez odbiorców.

Formuła

304 Not Modified

Do czego służy przekierowanie 304?

Przekierowanie 304 można wprowadzić na stronach o dowolnym charakterze. Dobrze sprawdzi się zarówno w przypadku blogów, jak i wizytówek czy stron firmowych. Jego atutem jest to, że dobrze radzi sobie z witrynami często aktualizowanymi. Dzięki niemu każda osoba, która odwiedzi Twoje miejsce w sieci, zawsze zobaczy najnowsze informacje. Gdy natomiast takie się nie pojawią od daty jej ostatniej wizyty, witryna załaduje się szybko.

To wygodne rozwiązanie, ale wykorzystywane obecnie stosunkowo rzadko. Wynika to z faktu, że potrafi ono przysporzyć stronie rozmaitych problemów. Zdarza się, że HTTP 304 pojawia się, gdy nie jest potrzebne. Problemem może być choćby błąd w pamięci przeglądarki. Brak możliwości wejścia na stronę z kolei negatywnie wpływa na prowadzenie interesów online. Administrator czy właściciel serwisu natomiast często nie ma żadnej kontroli nad tym, jakie błędy wyskakują w takich sytuacjach po stronie odbiorcy.

Przekierowanie 304 a SEO

Wykorzystywanie przekierowania 304 bywa korzystne szczególnie dla rozbudowanych stron. Wynika to z faktu, że zawierają one wiele elementów i są po prostu ciężkie. Pobieranie wszystkiego za każdym razem może zajmować wiele czasu. To negatywnie wpływa na komfort użytkowników, bo muszą oni czekać na wczytanie się witryny. Algorytmy Google promują natomiast witryny, które działają szybko i nie sprawiają większych problemów. Przyśpieszając zatem swoje miejsce w sieci, masz szansę wywalczyć wyższe miejsce w wynikach wyszukiwania.

Kod HTTP 304 to także ułatwienie podczas samej analizy witryny przez roboty indeksujące Google. Podczas powtórnego „prześwietlania” strony, zmniejszenie czasu jej wczytywania zadziała na Twoją korzyść. Roboty bowiem nie indeksują ponownie witryn, które już mają. Dzięki temu zajmą się np. Twoimi podstronami, na których wprowadzone były w ostatnim czasie modyfikacje. Szybciej pojawią się w wynikach wyszukiwania, przez co będą prędzej zdobywać klientów. To z kolei pozytywnie wpłynie na wyniki finansowe biznesu online, który prowadzisz.

Możliwe problemy z kodem HTTP 304 i ich rozwiązanie

Zdarza się, że użytkownikom kod HTTP 304 Not Modified wyświetli się w oknie przeglądarki. Zdarza się to, choć najczęściej powinien on działać tylko w tle. Wskazuje to na wystąpienie poważniejszego problemu. Zwykle wynika on z tego, że przeglądarka z jakiegoś powodu nie jest w stanie załadować plików witryny, które ma zapisane. Mogą być różne przyczyny takiego stanu rzeczy. Wynika to czasem np. z braku dostępu do plików, ich uszkodzenia czy innej sytuacji uniemożliwiającej wczytanie i zaktualizowanie posiadanych informacji.

Jak zapewne już się domyślasz, w znacznej mierze jest to kłopot występujący po stronie użytkownika. On też może sobie z tym poradzić na kilka sposobów. Z perspektywy właściciela strony WWW nie możesz nic z nimi zrobić. Opiszemy je poniżej więc tylko skrótowo, gdyby taki problem spotkał też kiedyś Ciebie:

  • skanowanie w poszukiwaniu złośliwego oprogramowania – przeglądarki mogą padać ofiarą rozmaitych wirusów. Warto regularnie je prześwietlać, upewniając się, że nic nie zakłóca ich prawidłowej pracy;
  • czyszczenie pamięci podręcznej przeglądarki – usunięcie obecnego w pamięci podręcznej pliku danej witryny sprawi, że po ponownym załadowaniu strony zostaną pobrane nowe informacje. To umożliwi przejście na stronę i prawidłowe działanie HTTP 304 w przyszłości;
  • reset IP i opróżnienie DNS – problem z kodem 304 może wynikać z używania nieaktualnego adresu IP. Warto też opróżnić DNS przeglądarki, co w Google Chrome zrobisz poprzez wpisanie w pasku „chrome://net-internals/#dns„;
  • wyłączenie rozszerzeń przeglądarki – niektóre rozszerzenia (szczególnie nieoficjalne) zakłócają prawidłową pracę przeglądarek.

Czy jest szansa na to, że problem z przekierowaniem HTTP 304 leży po stronie serwera? Taka sytuacja może mieć miejsce, ale dzieje się to sporadycznie. Jeśli korzystasz z Apache lub LiteSpeed, możesz poszukać w takim przypadku pliku .htaccess i sprawdzić konfigurację serwera. Powinien on znajdować się na Twoim serwerze w katalogu głównym witryny. Uzyskasz do niego dostęp z poziomu swojego konta hostingowego lub przy użyciu klienta FTP, takiego jak np. FileZilla.

Po jego otwarciu znajdź sekcję mod_cache. Niczego z niej nie usuwaj, ale wprowadź tymczasowe, nieszkodliwe zmiany. Spróbuj ją np. tymczasowo „wyłączyć” i zobaczyć, w jaki sposób wpłynie to na witrynę. W jaki sposób zrobić to szybko, łatwo i nieszkodliwie? Najlepiej będzie, jeśli zamienisz ją np. na komentarze, poprzez dodanie symbolu # w każdej linii. Zapisz zmiany i sprawdź, czy problem został rozwiązany.

Kod HTTP 304 nadal uniemożliwia otwarcie witryny? W takiej sytuacji skontaktuj się z firmą odpowiedzialną za Twój hosting lub serwer. Na swoim koncie klienta możesz też sprawdzić dziennik błędów i przekierowań, jeśli takie oferuje Twój usługodawca.