curl — получить правильный код статуса HTTP в PHP, когда веб-сайт защищен от перебора сетью Distill.

Я пытаюсь получить местоположение перенаправления сайт

Когда я делаю запрос cURL, я получаю 405 Not Allowed код в ответе.

С помощью SEOBook.com Проверка заголовка сервера ответ 200 OK,

В моих тестах я нашел только web-sniffer.net чтобы получить ожидаемое 301 Moved Permanently статус в ответе.

Я пробовал много разных конфигураций cURL (пользовательский агент, куки …), но пока ни одна комбинация не смогла получить ответ, который я ожидал.

Мой код
:

<?php
$url = "https://www.indiegogo.com/projects/over-and-above-africa-the-solution-to-end-poaching-drones";
$timeout = 30;
$http = curl_init($url);
curl_setopt($http, CURLOPT_RETURNTRANSFER, true);
curl_setopt($http, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($http, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13');
curl_setopt($http, CURLOPT_FRESH_CONNECT, true);
curl_setopt($http, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($http, CURLOPT_TIMEOUT, $timeout);
curl_setopt($http, CURLOPT_CONNECTTIMEOUT, $timeout);

if (preg_match('`^https://`i', $url))
{
curl_setopt($http, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($http, CURLOPT_SSL_VERIFYHOST, 0);
}

curl_setopt($http, CURLOPT_HEADER, true);
curl_setopt($http,CURLOPT_HTTPHEADER,array('Accept-Language', 'nl,en;q=0.7;en-us;q=0.3'));
$sContenu = curl_exec($http);

echo curl_getinfo($http, CURLINFO_HTTP_CODE);

curl_close($http);
echo $sContenu;
?>

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]