Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Запрос Curl главной страницы дает 404 Not Found
 
 автор: scva   (19.07.2015 в 12:11)   письмо автору
 
 

Есть такой проект, http://www.pulscen.ru/
При попытке получить главную страницу, выдает 404 not found. Почему? Что за защита?
Вообще цель, авторизироваться на ресурсе использую Curl, но тут даже до главной страницы не достучаться.


$url = "http://www.pulscen.ru/";
$useragent = "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0";

$cURLHeaders = array(
'User-Agent' => $useragent,
'Host'=>"www.pulscen.ru"
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $cURLHeaders);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

echo $data = curl_exec($ch);
curl_close($ch);


Причем если поменять $url на другой сайт, то все работает, к примеру тот же яндекс выводится корректно

  Ответить  
 
 автор: indexer   (20.07.2015 в 12:28)   письмо автору
 
   для: scva   (19.07.2015 в 12:11)
 

в вопросах curl очень помогает плагин firebug.
Включите куки и возможно не все хедеры передаются. Часто бывает передачи только useragent недстаточно. Сайты стали умнее.
Отдебажте запрос (firebug вкладка сеть).
Посмотрите все хедеры, запростие все страницы получите с них данные и отправте обратно.
Сделайте точно так же как это делает браузер и будет вам счастье

Навскидку, браузер при запросе основного домена стучится и вот сюда.
h@@p://www.pulscen.ru/ajax/toolbar?is_portal_page=true&return_to=http%3A%2F%2Fwww.pulscen.ru%2F&root=1&rubric_id=&_=1437322192

  Ответить  
 
 автор: scva   (24.08.2015 в 01:58)   письмо автору
 
   для: indexer   (20.07.2015 в 12:28)
 

Вопрос не решился

  Ответить  
 
 автор: scva   (24.08.2015 в 01:58)   письмо автору
 
   для: scva   (19.07.2015 в 12:11)
 

Вопрос не решился

  Ответить  
 
 автор: mikha   (09.09.2015 в 12:08)   письмо автору
 
   для: scva   (24.08.2015 в 01:58)
 

Чудо однако)))
$cURLHeaders = array(
  'Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1',
  'User-Agent: Opera/9.80',
  'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8',
  'Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0',
);

$ch = curl_init("http://www.pulscen.ru/");
curl_setopt($ch, CURLOPT_HTTPHEADER, $cURLHeaders);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
echo $data = curl_exec($ch);
curl_close($ch); 

ЗЫ. Нужные заголовки - начинают отвечать редиректами.
COOKIE - отдавать страницу, вместо 403

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования