php
  • redirect
  • curl
  • 2013-06-27 3 views 0 likes 
    0

    그래서 나는 다른 시스템에 데이터를 게시하고 시스템이 다시에 응답하는 "리디렉션 URL을"검색 2 초 후 사용자를 리디렉션 걸려 라하지만 난 얻을 :cURL에서 "요청한 URL을 찾을 수 없습니다 ..."오류가 발생합니다. 어떤 아이디어?

    요청 된 URL의 /somescript.aspx을 이 서버에서 발견되지 않았습니다.

    내가 뭘 잘못하고 있는지 알기! 아니면 다른 놀이가 있습니까?

    <?php 
    $strURL = 'http://someplace.com/somescript.aspx'; 
    $fields_string = implode('&', (array)$_SESSION['apply']); 
    
    $resURL = curl_init(); 
    curl_setopt($resURL, CURLOPT_URL, $strURL); 
    curl_setopt($resURL, CURLOPT_POST, true); 
    curl_setopt($resURL, CURLOPT_POSTFIELDS, $fields_string); 
    curl_setopt($resURL, CURLOPT_HEADER, TRUE); 
    curl_setopt($resURL, CURLOPT_FOLLOWLOCATION, FALSE); 
    $response = curl_exec($resURL); 
    $RedirectLocation = curl_getinfo($resURL, CURLINFO_EFFECTIVE_URL); 
    
    unset($_SESSION['apply']); ?> 
    <script type="text/javascript"> 
    $(function() { 
        setTimeout(function() { 
         window.location.href = "<?php echo $RedirectLocation; ?>"; 
        }, 2000) 
    }); 
    </script> 
    

    답변

    0

    301/302 리디렉션 대상을 검색하려고하지만 실제로 따라갈 수 없습니까? CURLOPT_RETURNTRANSFER을 true로 설정하고 Location: 헤더를 응답에서 구문 분석하십시오. 당신이 리디렉션을 따를 컬 설정하지 않으면

    curl_setopt($resURL,CURLOPT_RETURNTRANSFER); 
    $response = curl_exec($resURL); 
    echo $repsonse 
    

    IIRC CURLINFO_EFFECTIVE_URL이 변경되지 않습니다 :

    내가 여기에 코드를 변경의 의미를 참조하십시오.

    +0

    좋아요. 나는 그것을 시도 할 것이다. 하지만 "request url"오류를 수정/수정합니까? – FrankO

    관련 문제