Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
535 views
in Technique[技术] by (71.8m points)

php - Redirect to 404 page or display 404 message?

I am using a cms, and file-not-found errors can be handled in different ways:

  1. The page will not be redirected, but an error-msg will be displayed as content (using the default layout with menu/footer).
  2. The page will be redirected to error.php (the page looks the same like 1. but the address changed)
  3. The page will be redirected to an existing page, e.g. sitemap.php

Is there a method to be preferred in regards to search engines, or does this make no difference?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

If it's not found, then you should issue a 404 page. Doing a redirect causes a 302 code, followed by a '200 OK', implying that there IS some content. A 404 flat out says "there is no file. stop bugging me".

Something like this would present a 404 page with proper header code:

<?php
if ($page_not_found) {
   header('This is not the page you are looking for', true, 404);
   include('your_404_page.php');
   exit();
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...