Обойти блокировку Curl-запрса PHP
Пожалуйста, помогите понять, что блокирует запрос.
Ситуация:
Источник — сайт Хофф, клиентская часть сайта динамическая, построена на API-запросах. Рисуется в моменте загрузки страницы. Нужно парсить данные, используя их API.
Запросы на JS из консоли браузера дублирую, данные получаю и всё вроде бы гут. Но с Curl — ни в какую.
Перепробовал всё что нашёл в сети: кукисы ставил, заголовки дублировал, те что отправляются из браузера. Последний код, который дал пару раз результат такой:
<?php
header('Content-Type: text/plain; charset=utf-8');
$request = array();
$request[] = 'host:hoff.ru';
$request[] = 'Connection: keep-alive';
$request[] = 'Pragma: no-cache';
$request[] = 'Cache-Control: no-cache';
$request[] = 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8';
$request[] = 'User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36';
$request[] = 'DNT: 1';
$request[] = 'Accept-Encoding: gzip, deflate';
$request[] = 'Accept-Language: en-US,en;q=0.8';
$url = 'https://hoff.ru/vue/catalog/section/?category_id=2768&limit=30&offset=0&showCount=1&type=product_list';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $request);
curl_setopt($ch, CURLOPT_ENCODING,"");
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT,10);
curl_setopt($ch, CURLOPT_FAILONERROR,true);
$data = curl_exec($ch);
if (curl_errno($ch)){
echo 'Retreive Base Page Error: ' . curl_error($ch);
}
else {
$info = rawurldecode(var_export(curl_getinfo($ch),true));
echo $data;
}
?>