2013-01-19 2 views
0

내가보고 싶은 것은 사용자가 입력 한 URL이 PHP의 다른 페이지로 리디렉션되는지 여부입니다. 리다이렉트하는 곳을보고 싶지는 않지만 다른 페이지로 리디렉션되는지 여부 만 알면됩니다.PHP에서 URL이 다른 페이지로 리디렉션되는지 여부를 확인하는 방법은 무엇입니까?

는 여기에 현재 사용하는 것을 시도하고있는 작업은 다음과 같습니다 그러나

<?php 
    echo "Redirect check"; 
    $ch = curl_init('http://www.google.com/'); 
    curl_exec($ch); 
    $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    if ($code === 301 || $code === 302 || $code === 303 || $code === 307) { 
    $redirect = true; 
    }else{ 
    $redirect = false; 
    } 
?> 

, 나는이 프로그램을 실행할 때, 그것은 잠시 "확인 리디렉션"표시 후 yahoo.com에 저를 리디렉션합니다.

어떤 도움

주시면 감사하겠습니다.

미리 감사드립니다.

답변

1

헤더 만 검사 할 때 BODY가 필요하지 않습니다. HEAD 요청을 보내주십시오. 또한 리디렉션 할 필요가 없습니다. 따라서 curl_exec 앞에 다음 옵션을 추가하십시오.

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); 
curl_setopt($ch, CURLOPT_NOBODY, true); 

example

+0

네를 참조하십시오. 이제 작동합니다. phl 매뉴얼에서 curl 함수를 참조해야합니다. 고마워요 : D 조 – user1987363

관련 문제