I’m currently coding a site and I want to know the best alternative.
Should I add header("HTTP/1.0 404 Not Found") without redirecting or should I redirect and add a 404 header?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Redirecting means “What you asked for is actually over here”.
If it isn’t found, then it isn’t found. Don’t redirect.
Output a 404 status code, and then an HTML document that explains that whatever was requested wasn’t found. You can then suggest an onwards journey by, for example, providing links to the main sections of the site or performing a search based on keywords extracted from the URL.
(The practical consequences of redirecting are that the URL vanishes from the address bar which makes it hard to look at an think “Oh, I mistyped that one letter, I’ll just change it” or to copy/paste it into a bug report, etc).