2014-04-20 2 views
0

XML을 반환하는 사이트에서 데이터를로드하려고하지만 보안 목적으로 리디렉션을 수행하면 XML 만 반환합니다. 이 리디렉션을 따르고 출력을받는 PHP 요청을 어떻게 구성합니까?PHP 리디렉션되는 URL에서 데이터 가져 오기

+0

'curl'을 사용하고 옵션은 –

+0

입니다. PHP를 사용하여 서버에 액세스 할 수 없으며 새로운 기능을 추가 할 수 없습니다. curl은 PHP에서 기본값이 아니며 설치해야한다는 것을 이해합니다. – Herith12

+0

서버에서 file_get_contents()가 활성화되어 있습니까? 그러면 리디렉션을 따라 데이터를 반환해야합니다. – Levi

답변

1

file_get_contents은 HTTP 리디렉션을 따라야합니다. 기본에 따르면 HTTP context optionsfollow_location이 활성화되고 max_redirects 원래 페이지로 리디렉션 곳의 XML이 포함되어야이 예 $xml에서 20

입니다 : 그건 당신이 확인할 수 있습니다 작동하지 않는 경우

$xml = file_get_contents('http://www.example.com/'); 

을 기본 컨텍스트 옵션은 사용자 지정 컨텍스트를 지정하여 재정의되지 않습니다.

$context = stream_context_create(
    array (
     'http' => array (
      'follow_location' => true, 
      'max_redirects' => 20 
     ) 
    ) 
); 
$xml = file_get_contents('http://www.example.com/', false, $context); 
+0

감사합니다. simplexml_load_file 이후에 작동하지 않을 것이라고 생각했습니다. 전 가정을 수행하기 전에 다른 것들을 시도해야합니다. 레위도 똑같은 대답을했습니다. – Herith12

관련 문제