file_get_contents로 리디렉션 후 실제 URL 가져오기
file_get_contents()를 사용하여 웹사이트 콘텐츠를 가져올 때 제공된 URL이 다음과 같은 상황에 직면할 수 있습니다. 다른 위치로 리디렉션됩니다. 이러한 경우 리디렉션 후 실제 URL을 얻어야 합니다.
file_get_contents()로 리디렉션 처리
기본적으로 file_get_contents()를 사용하면 리디렉션을 따릅니다. 자동 리디렉션을 방지하려면 사용자 정의 스트림 컨텍스트를 활용할 수 있습니다. 'follow_location' 옵션을 false로 설정하면 자동 리디렉션을 비활성화할 수 있습니다.
<code class="php">$context = stream_context_create( array( 'http' => array( 'follow_location' => false ) ) ); $html = file_get_contents('http://www.example.com/', false, $context);</code>
실제 URL에 접근
자동 리디렉션을 비활성화한 후, 'http_response_header' 배열의 실제 URL입니다. 이 헤더에는 리디렉션된 페이지의 위치를 비롯한 다양한 HTTP 응답 세부정보가 포함되어 있습니다.
<code class="php">var_dump($http_response_header);</code>
'http_response_header'를 인쇄하면 배열 내에서 'Location' 헤더를 찾을 수 있습니다. 이 헤더 값은 리디렉션 후의 실제 URL을 나타냅니다.
영감
이 솔루션은 Stack Overflow 토론에서 영감을 받았습니다. [이동된 헤더를 무시하는 방법은 무엇입니까? PHP에서 file_get_contents를 사용합니까?](https://stackoverflow.com/questions/7253653/how-do-i-ignore-a-moved-header-with-file-get-contents-in-php)
위 내용은 PHP에서 file_get_contents()를 사용하여 리디렉션 후 실제 URL을 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!