Эмуляция браузера Curl - Странный случай!

FD
На сайте с 12.05.2017
Offline
71
2355

Друзья. Весь день ломаю голову.

Есть страница, с нее идёт ajax - GET запрос к скрипту, в запросе один параметр, скрипт выполняется и возвращает результат выполнения. Все хорошо только из браузера. Когда я пытаюсь отослать запрос через CURL скрипт мне передает 302 редирект. Помогите пожалуйста!

Вот пример:

С этой страницы: https://venro.ru/?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FBlsib4bDmpy%2F%3Ftaken-by%3Dtimatiofficial

Раз в 10 секунд идёт запрос сюда: https://venro.ru/core/likes?url=https://www.instagram.com/p/Blsib4bDmpy/?taken-by=timatiofficial

Браузер отправляя запрос, получает статус 200 и все ОК.

Curl отправляя запрос получает 302 редирект.

Спасибо!

НАКРУТКА INSTAGRAM (https://instagram777.ru) - Смешные цены!
LEOnidUKG
На сайте с 25.11.2006
Offline
1724
#1

Ну так редирект то куда? И в чём проблема обработать этот редирект?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
FD
На сайте с 12.05.2017
Offline
71
#2
LEOnidUKG:
Ну так редирект то куда? И в чём проблема обработать этот редирект?

Редирект на главную. Сами взгляните! Когда браузер отравляет запрос, то приходит нормальный ответ, когда курл, то приходит ответ 302 - редирект на главную

LEOnidUKG
На сайте с 25.11.2006
Offline
1724
#3
Сами взгляните!

Код курла в студию.

FD
На сайте с 12.05.2017
Offline
71
#4
LEOnidUKG:
Код курла в студию.

Добавление заголовков ничего не дает

function get($url,$proxy) { 

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_REFERER, "https://venro.ru/?url=".$url);
// curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
// curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss = curl_exec($ch);
curl_close($ch);
return $ss;
}

$prox = 'localhost:9050';
$a = get('https://venro.ru/core/likes?url='.$url.'',$prox);
echo $a;


---------- Добавлено 26.07.2018 в 21:30 ----------

Есть мысли?
MT
На сайте с 17.01.2017
Offline
22
#5


curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Referer: https://venro.ru/?url=' . $url,
'X-Requested-With: XMLHttpRequest'
]);
FD
На сайте с 12.05.2017
Offline
71
#6
MikeTheRaven:

curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Referer: https://venro.ru/?url=' . $url,
'X-Requested-With: XMLHttpRequest'
]);

Нет, ситуация аналогичная, возвращает редирект.

HTTP/1.1 302 Found Server: nginx Date: Fri, 27 Jul 2018 03:23:17 GMT Content-Type: text/html; charset=UTF-8 Content-Length: 0 Connection: keep-alive X-Powered-By: PHP/5.6.33 X-Frame-Options: SAMEORIGIN Location: https://venro.ru Strict-Transport-Security: max-age=31536000;

Curl:


function get($url,$proxy) {

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_REFERER, "https://venro.ru/?url=".$url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Referer: https://venro.ru/?url=' . $url,
'X-Requested-With: XMLHttpRequest'
]);
// curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
// curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss = curl_exec($ch);
curl_close($ch);
return $ss;
}

$prox = 'localhost:9050';
$a = get('https://venro.ru/core/likes?url='.$url.'',$prox);
echo $a;
MT
На сайте с 17.01.2017
Offline
22
#7

Вот этот код с русского ip у меня возвращает 200


$curl_opts = [ CURLOPT_URL => 'https://venro.ru/core/likes?url=https://www.instagram.com/p/Blsib4bDmpy/?taken-by=timatiofficial',
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 5,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [ 'Referer: https://venro.ru/?url=https://www.instagram.com/p/Blsib4bDmpy/?taken-by=timatiofficial',
'X-Requested-With: XMLHttpRequest'
]
];

$ch = curl_init();
curl_setopt_array($ch, $curl_opts);
$data = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

echo $http_code;
FD
На сайте с 12.05.2017
Offline
71
#8

Спасибо тему мождно закрыть

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий