What does HTTP 303 mean?
The client should fetch a different URL with GET. The textbook use is the Post/Redirect/Get pattern: after a form is submitted with POST, the server answers 303 pointing to a confirmation page, so refreshing the page does not resubmit the form.
3xx Redirection: The client must take another step — usually follow the URL in the Location header — to complete the request.
303 and SEO
Not used for moving pages; no SEO effect.
Example response
HTTP/1.1 303 See Other
Location: /orders/1001/confirmation
How to return a 303 response
Node.js (Express)
res.redirect(303, 'https://example.com/new-url');PHP
header('Location: https://example.com/new-url', true, 303);
exit;Python (Flask)
return redirect('https://example.com/new-url', code=303)Go (net/http)
http.Redirect(w, r, "https://example.com/new-url", 303)nginx
return 303 https://example.com/new-url;
Related status codes
- 302 Found — The resource is temporarily at a different URL, given in the Location header.
- 307 Temporary Redirect — Temporary redirect that keeps the request method and body.
- 201 Created — The request succeeded and a new resource was created.
Check which status code a URL returns with the HTTP header checker, or trace a redirect chain with the redirect checker.
Häufige Fragen
What does status code 303 mean?
GET.