2016-06-16 2 views
0

Я получаю сообщение об ошибке RequestException в CurlFactory.php строке 187: Curl ошибки 60: проблемы сертификата SSL: не удалось получить локальный сертификат эмитента (см curl.haxx.se/libcurl /c/libcurl-errors.html) при попытке войти в систему с помощью facebook. Это учебное пособие, которое я последовал за http://blog.damirmiladinov.com/laravel/laravel-5.2-socialite-facebook-login.html#.V2K-ersrLIV.Laravel 5,2 Светская Facebook Войти Curl ошибка 60

Это мой контроллер:

public function redirect() 
{ 
    return Socialite::driver('facebook')->redirect(); 
} 

public function callback() 
{ 
    // when facebook call us a with token 
    $providerUser = \Socialite::driver('facebook')->user(); 
} 

Из моего исследования я узнал, что ошибка в результате OFTHE версии guzzlehttp/guzzle.I попытался решение, предусмотренное в этих ссылках, но он не работал меня. Laravel Socialite testing on localhost, SSL certificate issue? и https://laracasts.com/discuss/channels/general-discussion/curl-error-60-ssl-certificate-problem-unable-to-get-local-issuer-certificate/replies/52954. Незлая помощь.

ответ

0

После битвы в течение почти одного месяца я смог решить свою проблему. Проблема была в файле Cacert.pem, который отсутствовал в моей папке php в каталоге xampp. Я загрузил новый carcet.pem с https://curl.haxx.se/ca/cacert.pem и сохранил его как carcet.pem.txt в моей папке php внутри каталога xampp. Затем я открыл файл php.ini внутри папки php и изменил ;curl.cainfo= на curl.cainfo="C:\xampp\php\cacert.pem.txt". Не забудьте.txt расширение, а также не забудьте сделать перезагрузить xampp. Это решило проблему для меня. Вы также можете узнать об этой ошибке здесь Laravel 5 Socialite - cURL error 77: error setting certificate verify locations. Вот ссылка на учебник, который я выполнил для реализации Facebook Socialite Login http://blog.sarav.co/integrating-socialite-in-laravel-5-2/. Надеюсь, это поможет кому-то.

1

Для тех, кому еще нужно решение, вот оно.

$providerUser = \Socialite::driver('facebook') 
    ->setHttpClient(new \GuzzleHttp\Client(['verify' => false])) 
    ->user(); 

Обратите внимание на ['verify' => false], это отключает проверку проверки сертификата SSL сделано клиентом жрать HTTP, который используется Socialite. Также может быть хорошей идеей экспортировать это в конфигурацию в качестве настройки.

Смежные вопросы