2011-08-22 183 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)“” –