Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: SSL ошибка при попытки получить html код facebook

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Ошибка: "SSL certificate problem: unable to get local issuer certificate"
Волк
Отправлено: 26 Мая, 2014 - 11:30:44
Post Id



Частый гость


Покинул форум
Сообщений всего: 149
Дата рег-ции: Окт. 2007  


Помог: 0 раз(а)




Пытаюсь распарить книго-лицо (facebook) при помощи curl
Пытаюсь вывести html фейсбука
PHP:
скопировать код в буфер обмена
  1. $url = "https://www.facebook.com/";
  2. $ch = curl_init();
  3.  
  4. // Указываем параметры, включая url
  5. curl_setopt($ch, CURLOPT_URL, $url);
  6.  
  7.  
  8. // откуда якобы пришли
  9. $ref="google.com";
  10. curl_setopt($ch, CURLOPT_REFERER, $ref);
  11.  
  12. // выводить заголовки
  13. curl_setopt($ch, CURLOPT_HEADER, 1);
  14. // возвращаем результаты вместо вывода
  15. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  16.  
  17.  
  18. // подделываем заголовки (скопипастил из браузера)
  19. $heads = array(
  20.     ':host:www.facebook.com',
  21.     ':method:GET',
  22.     ':path:/',
  23.     ':scheme:https',
  24.     ':version:HTTP/1.1',
  25.     'accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
  26.     'accept-encoding:gzip,deflate,sdch',
  27.     'accept-language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4',
  28.     'cache-control:max-age=0',
  29.     'cookie:datr=5cImU7-WOmPzeYsNTEjmjG1A; lu=ggGFVlP99WEBfd3gWowlDSXg; csm=2; fr=0ifTLbBGbIbv5UFGi.AWU9CmvF0GGqz06itzKggxT6_U0.BTJsNc.Ry.FN7.AWV9oQWM; s=Aa5Gupe2OpSvcnAY.BTVljE; c_user=100001730749214; xs=106%3Aa3JjX8wWAXnI8A%3A2%3A1398167748%3A6002; act=1401086867810%2F2; presence=EM401089583EuserFA21B01730749214A2EstateFDsb2F0Et2F_5bDiFA2user_3a1B06750423642A2ErF1C_5dElm2FA2user_3a1B06750423642A2Euct2F1401086195003EtrFnullEtwF1977412708EatF1401089564304G401089583926CEchFDp_5f1B01730749214F23CC; p=-2; wd=1920x628',
  30.     'user-agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36',
  31. );
  32. curl_setopt($ch, CURLOPT_HTTPHEADER, $heads);
  33.  
  34.  
  35. // танец с бубном вокруг ssl (не помогли)
  36. // curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
  37. // curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
  38.  
  39.  
  40. // получаем HTML в качестве результата
  41. $output = curl_exec($ch);
  42.  
  43.  
  44. // --- Выводим инфу
  45. // показываем ошибки
  46. echo "Ошибки: ";
  47. echo curl_error($ch);
  48. echo "<br>";
  49.  
  50. // был ли HTTP редирект?
  51. if (preg_match("!Location: (.*)!", $output, $matches)) {
  52.     echo "Редирект был на $matches[1]<br>";
  53. }
  54. else
  55. {
  56.     echo "Не было редиректа<br>";
  57. }
  58.  
  59. // выводим инфу
  60. pp( curl_getinfo($ch) );
  61.  
  62.  
  63. // рендер
  64. echo $output;
  65.  
  66. // закрываем соединение
  67.  
  68.  
  69. // функция помощинк которая красиво выодит массивы
  70. function pp($info){
  71.     echo '<pre>';
  72.     print_r($info);
  73.     echo '</pre>';
  74. }
  75.  


Цитата:
Ошибки: SSL certificate problem: unable to get local issuer certificate
Не было редиректа
Array
(
[url] => https://www[dot]facebook[dot]com/
[content_type] =>
[http_code] => 0
[header_size] => 0
[request_size] => 0
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0.109
[namelookup_time] => 0
[connect_time] => 0.046
[pretransfer_time] => 0
[size_upload] => 0
[size_download] => 0
[speed_download] => 0
[speed_upload] => 0
[download_content_length] => -1
[upload_content_length] => -1
[starttransfer_time] => 0
[redirect_time] => 0
[certinfo] => Array
(
)

[primary_ip] => 31.13.81.33
[primary_port] => 443
[local_ip] => 192.168.1.5
[local_port] => 2692
[redirect_url] =>
)

Подскажите пожалуйста как починить, а то я не очень круто в SSL разбираюсь.


-----
Таран - оружие героев!
 
 Top
esterio
Отправлено: 26 Мая, 2014 - 12:31:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




PHP:
скопировать код в буфер обмена
  1. curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,0);
  2. curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
 
 Top
Волк
Отправлено: 26 Мая, 2014 - 13:13:34
Post Id



Частый гость


Покинул форум
Сообщений всего: 149
Дата рег-ции: Окт. 2007  


Помог: 0 раз(а)




esterio пишет:
PHP:
скопировать код в буфер обмена
  1. curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,0);
  2. curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);

Спасибо огромное за помощь


-----
Таран - оружие героев!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB