问题描述:

I am using curl and setting all the parameters correctly (as far as I know) but CURLOPT_TIMEOUT is being ignored and allowing for an infinite loop. Here is the configuration for my Curl Request:

$user_agent = 'Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0';

$options = array(

CURLOPT_CUSTOMREQUEST => "GET", //set request type post or get

CURLOPT_POST => false, //set to GET

CURLOPT_USERAGENT => $user_agent, //set user agent

CURLOPT_COOKIEFILE => dirname(__FILE__)."/cookie.txt", //set cookie file

CURLOPT_COOKIEJAR => dirname(__FILE__)."/cookie.txt", //set cookie jar

CURLOPT_RETURNTRANSFER => true, // return web page

CURLOPT_SSL_VERIFYPEER, FALSE, //ignore ssl

CURLOPT_PROXY =>$proxy['ip'],

CURLOPT_PROXYPORT =>$proxy['port'],

CURLOPT_HEADER => false, // don't return headers

CURLOPT_FOLLOWLOCATION => true, // follow redirects

CURLOPT_ENCODING => "", // handle all encodings

CURLOPT_AUTOREFERER => true, // set referrer on redirect

CURLOPT_CONNECTTIMEOUT => 20, // timeout on connect

CURLOPT_TIMEOUT => 10, // 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);

I am not the best at debugging so I'm not sure what the problem could be. Please help me.

网友答案:

The curl_setopt($connection, CURLOPT_TIMEOUT, $seconds) should be called just right before curl_exec() function.

It wasn't working for me when I called it sooner

相关阅读:
Top