I want to display a 404 Error if a user reaches a page that exists but I don’t want him/her to see.
I don’t want to do redirect (that would cause the address bar to show the link of the error page in the address bar) like the following:
if ($this_page_should_not_be_seen)
header("Location: err.php?e=404");
Instead, it should seem like the page really doesn’t exist, without having the URL in the browser’s address changed.
Include the error page in your current page and send a 404 error status code:
Note that this should be used if the page should never be seen. A better status code for un-authorized access (if the page should be seen by some logged in users) is 403 (Not Authorized).