2010-05-13 6 views
0

페이지가 없을 때 사용자 정의 오류 페이지를 사용하는 PHP 웹 페이지가 있습니다. 커스텀 에러 페이지는 PHP에 포함되어 있습니다. PHP에서 404 오류 발생 후 FrontPage로 리디렉션

그래서 누군가 유형은 존재하지 않는 URL에 난 그냥 오류 페이지를 포함 할 때, 에러 페이지로 시작

<?php header("HTTP/1.1 404 Not> Found"); ?> 

이것은 또한 페이지가 존재하지 않는 크롤러를 알려줍니다.

이제 새로운 시스템을 설치했습니다. 사용자가 잘못된 URL을 입력하면 사용자가 FrontPage로 돌아가고 FrontPage에 메시지가 표시됩니다. 나는이 같은 FrontPage를 리디렉션 :

header('Location:' . __TINY_URL . '/'); 

지금 문제가 PHP 그냥 200 코드를 다시 보냅니다

, 페이지를 찾을.

이 두 코드를 어떻게 혼합하여 FrontPage에서 404 코드를 만들 수 있습니까?

그리고이 전체적으로 멋진 페이지 표현 및 오류 페이지입니다.

+1

IMHO는 매우 성가신 행동입니다. 자동 리디렉션이 아닌 404 링크 페이지가 홈페이지에 표시되어야합니다. – nico

답변

1

오류 발생 후 리디렉션하는 것은 좋지 않습니다. 오타를 만들면 임의의 페이지로 리디렉션되어 다시 시작해야하므로 URL 입력/수정을 좋아하는 사용자에게는 특히 귀찮습니다.

전혀 권장하지 않습니다. 원한다면 오류 페이지를 첫 페이지처럼 보이게 할 수는 있지만 다소 혼란 스럽습니다.

+0

그래, 몇 가지 생각을 한 후 리디렉션하지 않는 것이 낫다. 나는 물건을 떠나지 않을 것입니다. 고맙습니다. –

0

당신은 당신이 페이지로 리디렉션되기 때문에

ErrorDocument 404 http://www.yourdomain.com/404.php 

또는

ErrorDocument 404 http://www.yourdomain.com/index.php #Your homepage 

이는 intials에게 그것은 당신에게 200 코드를주고

2

404 헤더를 보내드립니다 당신의 htaccess로이 점을 추가 할 수 있습니다 200 코드를 반환합니다. 이전에 이렇게했던 방법은 404 헤더를 보낸 다음 404보기를로드하는 것입니다.

header("HTTP/1.0 404 Not Found"); 
include("four_o_four.php");