@nlan

Почему регистрация и получение контента через cURL выдает 404 ошибку?

Доброго времени суток. Ситуация такая: требуется спарсить страницу сайта, с предварительной авторизацией. Написан скрипт с помощью cURL.
$curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'http://site.ru/login');
        curl_setopt($curl, CURLOPT_COOKIEJAR, "/my_cookies.txt");//сохранить куки в файл
        curl_setopt($curl, CURLOPT_COOKIEFILE, "/my_cookies.txt");
        curl_setopt($curl, CURLOPT_USERAGENT, "Opera/10.00 (Windows NT 5.1; U; ru) Presto/2.2.0");
        curl_setopt($curl, CURLOPT_FAILONERROR, 1);
        curl_setopt($curl, CURLOPT_REFERER, 'http://site.ru/');
        curl_setopt($curl, CURLOPT_TIMEOUT, 3);
        curl_setopt($curl, CURLOPT_POST, 1); // устанавливаем метод POST
        curl_setopt($curl, CURLOPT_POSTFIELDS, 'email=email@mail.ru&password=1111');
        curl_setopt($curl, CURLOPT_HEADER, 1);
        curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt ($curl, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
        curl_exec($curl);
        curl_close($curl);


Ситуация следующая: на локальном компьютере отрабатывает, на тестовом хостинге отрабатывает, на боевом - нет.
curl_errno($curl);
curl_error($curl);

Возвращают ошибку 22, то есть ответ сервера 404
Попробовал через file_get_contents() - так же только на боевом сервере 404.

Подскажите, пожалуйста, в чем может быть дело? Предполагаю, что не стоит какое-то расширение (cURL стоит).
  • Вопрос задан
  • 3033 просмотра
Пригласить эксперта
Ответы на вопрос 1
callback
@callback
С "боевого" сервера ваш запрос просто не доходит до сайта, либо доходит до другого сайта. Посмотрите трассировку до сайта, nslookup и всё такое.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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