Почему не работает cURL?

Добрый день, использую такой код с cURL на хостинге:
$link = getPage('https://5ka.ru/api/v2/special_offers/?records_per_page=20&page=1');
echo "<pre>";
print_r($link['content']);

function getPage($url) {
    $useragent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)";
    
    $arrSetHeaders = array(
        "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
        "Accept-Encoding: gzip, deflate, br",
        "Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7",
        "Cache-Control: max-age=0",
        "Connection: keep-alive",  
    );    
    
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_REFERER, 'https://5ka.ru/');
    curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
    
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_ENCODING, "");
    
    curl_setopt($ch, CURLOPT_TIMEOUT, 120);
    curl_setopt($ch, CURLOPT_FAILONERROR, 1);
    curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $arrSetHeaders);
    
    $content = curl_exec($ch);
    $err = curl_errno($ch);
    $errmsg = curl_error($ch);
    $header = curl_getinfo($ch);
    curl_close($ch);
    
    $header['errno'] = $err;
    $header['errmsg'] = $errmsg;
    $header['content'] = $content;
    
    return $header;
}

В итоге получаю ответ:

The requested URL was rejected. Please consult with your administrator.
Your support ID is: 12671605384303416928
[Go Back]

Но если воспользоваться точно таким же кодом на другом сервере VPS (хостинге) - то он отрабатывает нормально.

Не пойму что не так настроено и что просить поправить хостера, чтобы заработало. Спасибо за помощь.
  • Вопрос задан
  • 226 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Но если воспользоваться точно таким же кодом на другом сервере VPS (хостинге) - то он отрабатывает нормально.
Скорее всего хост занесен в спам лист, если принципиально работать именно с этого хоста - связываться с администрацией хостинга (хотя скорее всего им пофиг), или связаться с админами 5ka.ru с просьбой снять ограничения.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы