Takeaways
- The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
- A
404status code does not indicate whether this lack of representation is temporary or permanent; the410 Gonestatus code is preferred over404if the origin server knows, presumably through some configurable means, that the condition is likely to be permanent.
Information
The 404 Not Found response status code indicates that the server cannot find the requested resource. Links that lead to a 404 page are often called broken or dead links and can be subject to link rot.
A 404 status code only indicates that the resource is missing: not whether the absence is temporary or permanent. If a resource is permanently removed, use the 410 Gone status instead.
A 404 response is cacheable by default; i.e., unless otherwise indicated by the method definition or explicit cache controls.
Custom error pages
NoteCustom design is a good thing, in moderation. Feel free to make your 404 page humorous and human, but don't confuse your users.
You can display a custom 404 page to be more helpful to a user and provide guidance on what to do next. For example, for the Apache server, you can specify a path to a custom 404 page in an .htaccess file.