2013-05-10 70 views
1

我有下面的代碼工作得到一個HTTP網址跟隨重定向,然後傳回它的新網頁網址。cURL HTTPS跟着重定向

// Follow URL 
private function follow_url($url) { 
    $options = array( 
     CURLOPT_RETURNTRANSFER => true,  // return web page 
     CURLOPT_HEADER   => true, // return headers 
     CURLOPT_FOLLOWLOCATION => true,  // follow redirects 
     CURLOPT_ENCODING  => "",  // handle all encodings 
     CURLOPT_USERAGENT  => "spider", // who am i 
     CURLOPT_AUTOREFERER => true,  // set referer on redirect 
     CURLOPT_CONNECTTIMEOUT => 120,  // timeout on connect 
     CURLOPT_TIMEOUT  => 120,  // timeout on response 
     CURLOPT_MAXREDIRS  => 10,  // stop after 10 redirects 
    ); 

    $ch  = curl_init($url); 
    curl_setopt_array($ch, $options); 
    $content = curl_exec($ch); 
    $err  = curl_errno($ch); 
    $errmsg = curl_error($ch); 
    $header = curl_getinfo($ch); 
    curl_close($ch); 

    $output = $header["url"]; 
    return $output; 
} 

我現在試圖讓它與HTTPS一起工作,但它並沒有遵循它停在輸入的URL上。

有什麼我可以做的,以解決這個問題?

回答

0

添加下列選項:

CURLOPT_SSL_VERIFYHOST => false, 
CURLOPT_SSL_VERIFYPEER => false, 
+0

這是不安全的。請參閱[this](http://stackoverflow.com/a/15051290/372643)。 – Bruno 2014-11-21 11:13:42