303 See Other każe klientowi pobrać inny zasób, wskazany w nagłówku Location, metodą GET (lub HEAD). Nie oznacza, że pierwotny zasób został przeniesiony; wskazuje osobny zasób, w którym znajduje się odpowiedź.
Główne zastosowanie to wzorzec Post/Redirect/Get. Po wysłaniu formularza metodą POST serwer odpowiada kodem 303 z adresem URL strony potwierdzenia, a przeglądarka wczytuje tę stronę metodą GET. Odświeżenie jej lub kliknięcie Wstecz nie wysyła wtedy formularza ponownie. Podążając za kodem 303, przeglądarki zmieniają każdą metodę oprócz HEAD na GET i pomijają treść żądania.
Odpowiedź 303 domyślnie nie trafia do pamięci podręcznej. Kod 303 w odpowiedzi na GET może też oznaczać, że serwer nie ma reprezentacji samej żądanej rzeczy, ale opisuje ją pod innym adresem URL – to wzorzec stosowany w Linked Data.
Przykładowa odpowiedź
HTTP/1.1 303 See Other
Date: Fri, 06 Nov 2026 10:15:32 GMT
Location: /orders/8412/confirmation
Content-Length: 0 SEO i sprawdzanie przekierowań
Google traktuje 303 jako przekierowanie tymczasowe: pierwotny adres URL zwykle pozostaje w indeksie, a adres docelowy dostaje tylko słaby sygnał kanoniczności. To zgodne z przeznaczeniem tego kodu, bo celem przekierowań 303 są zwykle strony z wynikiem lub potwierdzeniem, a nie treści, które mają zajmować wysokie pozycje. Nie używaj 303 do przenoszenia stron na stałe; stosuj 301 lub 308. Sprawdzanie przekierowań z metodą ustawioną na POST pokazuje, jak na przeskoku 303 żądanie zmienia się w GET.
Typowe przyczyny i zastosowania
- Post/Redirect/Get: obsługa formularza po żądaniu
POSTprzekierowuje na stronę z podziękowaniem lub stronę zamówienia. - API przyjmuje zadanie i kieruje klienta do osobnego zasobu z wynikiem.
- Linked Data: identyfikator URI oznaczający rzecz ze świata rzeczywistego przekierowuje do dokumentu, który ją opisuje.