Ошибка шлюза NGINX 502 при запуске через CURL

#php #curl

#php #curl

Вопрос:

Я использую следующий код для запуска curl.Но для одного URL-адреса я получаю ошибку 502 Bad Gateway.

    <?php
//$proxy = '127.0.0.1:80';
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => '<requesturl>',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
CURLOPT_SSL_VERIFYPEER=>false,
CURLOPT_SSL_VERIFYHOST=>false,
//CURLOPT_PROXY=>$proxy,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'Cookie: PHPSESSID=e03338f51c56ada6870d530080127581'
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
    print_r($response);
    print_r($err);
curl_close($curl);



?>
 

Я удалил https и поставил http и проверил, но для этого тоже не работает.

Моя версия PHP 5.6.

Спасибо, Рекха

Ответ №1:

Я нашел ответ.Я добавил пользовательский агент, и он работал нормально.

 curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
 

Для динамического получения пользовательского агента в php,

 $userAgent = $_SERVER['HTTP_USER_AGENT'];
 

Это кому-то поможет.

Спасибо, Рекха