2011-08-22 207 views
1

使用我的瀏覽器訪問給定鏈接時,它按照計劃正常工作。但是,當我試圖通過cURL訪問它時,它不起作用。發送數據時發生curl錯誤

這裏是我的代碼:

<?php 
    $url='http://example.com'; 
    $ch = curl_init ($url); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_BINARYTRANSFER,1); 
    $rawdata = curl_exec($ch); 
    if(curl_errno($ch)) 
{ 
    echo 'Curl error: ' . curl_error($ch); 
} 

    curl_close ($ch); 
?> 
+0

什麼是「不工作」是什麼意思?什麼是錯誤信息? – Maerlyn

+0

...「通過文件」是什麼意思?我沒有看到任何文件相關的片段。 – ninetwozero

+0

^^他意思是通過cURL(我想) –

回答

2

你是100%肯定的,你能在php.ini lib_curl?空白cURL響應很可能是由於模塊未啓用。試試下面的:

$ch = curl_init("http://stackoverflow.com"); 
var_dump (curl_exec($ch)); 

如果有輸出,該頁面可以重定向你,在這種情況下,嘗試將

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true)  // follow redirects 

CURLOPT_AUTOREFERER => true // may also help depending on the site... 
+0

您的上述代碼給出字符串(0)「」作爲輸出 –

+0

,正如我懷疑的那樣,libcurl未啓用。打開你的php.ini文件,找到這一行: ; extension = php_curl.dll 刪除「;」然後重試。如果這不起作用,請發佈以下代碼的結果: <?php ##測試cURL是否正在運行## ## WWW.WEBUNE.COM(請不要刪除)## echo'

'; var_dump(curl_version()); echo '
'; ?> –

+0

它給陣列(9){ [ 「的version_number」] => INT(464131) [ 「年齡」] => INT(3) [ 「功能」] => INT(1597) [「ssl_version_number」] => int(0) [「version」] => string(6)「7.21。3「 [」host「] => string(17)」i686-pc-linux-gnu「 [」ssl_version「] => string(14)」OpenSSL/0.9.8o「 [」libz_version「] => 字符串(7)「1.2.3.4」 –

1

你啓用的lib捲曲?

on XAMPP
on WAMP


$url='http://example.com'; 
    $ch = curl_init ($url); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_BINARYTRANSFER,1); 
    curl_setopt($ch,CURLOPT_MAXREDIRS,30); 
    curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1); 
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1; rv:6.0) Gecko/20100101 Firefox/6.0'); 
    $rawdata = curl_exec($ch); 
    if(curl_errno($ch)) 
    { 
     echo 'Curl error: ' . curl_error($ch); 
    } 
    echo $rawdata; 
    curl_close ($ch); 
+0

我已經檢查通過提取其他url.its工作:(。使用燈的.m使用 –

+0

'echo $ rawdata;''''''var_dump($ rawdata);' –

+0

var_dump($ rawdata)給字符串(0)「」 –