2013-07-27 1 views
1

특정 IP 사용자 만 페이지를 표시하고 IP가 일치하지 않으면 페이지가 보이지 않게 만듭니다 (리디렉션하지 않고 404 오류 페이지 표시).).IP 제한 액세스 및 허위 표시 (404)

if ($_SERVER['REMOTE_ADDR'] == 'IP address' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1') 
echo '<li><a href="page.php"><b>Page</b></a></li>'; 

그러나, 나는 404 오류 페이지를 표시하는 방법을 모른다 :

는 내가 IP를 확인하는 부분이있다.


편집 : 팁 주셔서 감사합니다. 결국, 나는 이런 식으로 해결 :

$ip = $_SERVER['REMOTE_ADDR']; 
$ip = substr($ip, 0, strrpos($ip, ".")); 

if ($ip !== 'someIp' && $_SERVER['REMOTE_ADDR'] !== '127.0.0.1') { 
$error = file_get_contents('./error/404.php'); 
exit(eval('?>' . $error)); 
} 

답변

2

, 당신은 일이 있으면 404 페이지의 내용을 밖으로 (404) 헤더와 echo를 설정; 그렇지 않으면, 당신이 다른 어떤 페이지처럼 될 수 있도록 만들어라.

header('HTTP/1.0 404 Not Found'); 
echo file_get_contents("404.html");