Laravel 5 Socialite - ошибка cURL 77: проверка сертификатов ошибок
Я использую socialite в Laravel 5 для настройки входа в facebook. Я внимательно следил за инструкциями, пока не застрял со следующей ошибкой.
cURL error 60: SSL certificate problem: unable to get local issuer certificate
поэтому я нашел этот ответ, чтобы исправить его, который действительно прошел, но затем я получил эту ошибку
cURL error 77: error setting certificate verify locations:
CAfile: /Applications/XAMPP/xamppfiles/cacert.pem
CApath: none
Любые идеи, в чем причина этой ошибки?! и как это исправить?!
Ответы
Ответ 1
Я тоже застрял в этой проблеме. Оказалось, что я неправильно установил путь к моему сертификату в моем файле php.ini. Забыл расширение .txt.
Что у меня было:
curl.cainfo = "C:\xampp\php\cacert.pem"
Что я изменил на:
curl.cainfo = "C:\xampp\php\cacert.pem.txt"
Надеюсь, это поможет.
Ответ 2
Добавить файл cacert.pem из https://curl.haxx.se/ca/cacert.pem в C:\XAMPP\PHP\cacert.pem
Измените настройку в файле php.ini:
curl.cainfo = "C:\xampp\php\cacert.pem
Ответ 3
Моя ошибка:
cURL error 77: error setting certificate verify locations: CAfile:
C:\xampp\apache\bin\curl-ca-bundle.crt CApath: none (see
http://curl.haxx.se/libcurl/c/libcurl-errors.html)
Это хорошо работает для меня:
- Загрузите сертификат с: https://curl.haxx.se/ca/cacert.pem
- Переименуйте файл cacert.pem в curl-ca-bundle.crt
- Скопируйте файл в путь/к /xampp/apache/bin
- Перезапустите Apache
Ответ 4
Тогда он отлично работает!
Ответ 5
Оформить двойную кавычку в файле php.ini:
если вы скопировали и прошли из Интернета, возможно, вы получили неправильную двойную кавычку:
"C:\XAMPP\PHP\cacert.pem.txt"
вместо
"C:\XAMPP\PHP\cacert.pem.txt"
Ответ 6
- Скачать с (https://curl.haxx.se/ca/cacert.pem)
- Измените имя " cacert.pem " на " curl-ca-bundle.crt "
- В ' php.ini ' удалите ' ; 'в следующей строке:
curl.cainfo="C:\xampp\apache\bin\curl-ca-bundle.crt"
Это сработало для меня.
Ответ 7
Вам нужно заменить существующий сертификат на другой здесь. После этого:
- Извлеките и добавьте его в
xampp\php\ext
- Открыть
xampp\php\php.ini
- Добавьте эту строку
curl.cainfo='location from the first step'
в конец файла.
- Перезагрузите, и теперь он должен работать.
Это источник.
Ответ 8
Я прочитал каждую нить, которую я смог найти, и этот предоставил недостающую часть.
Фон:. Я столкнулся с этой проблемой, пытаясь заставить Drupal 8 проверить наличие обновлений в новой среде разработки (на основе wamp).
Пример:
[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo = "C:\wamp\custom\cacert.pem.txt"
Если вы используете стек wamp, перезапустите его. Вы должны быть добрым.
Ответ 9
Сначала вам нужно загрузить файл "curl.cainfo", тогда вам нужно найти его в C:\xampp\php\cacert.pem.txt.
Во-вторых, вам нужно открыть файл php.ini в Xampp и скопировать его
= >
curl.cainfo = C:\xampp\php\cacert.pem.txt в любом месте.
Третий, пожалуйста, перезапустите Apache Server, обновите страницу локального хоста, и это должно работать нормально.
Ответ 10
это сработало для меня
curl.cainfo = "C:\xampp\php\cacert.pem.txt"
надеюсь, что это поможет кому-то:)
Ответ 11
Если кто-то работает с Windows с Plesk, и они получают эту ошибку.
Вы должны убедиться, что путь curl.cainfo находится внутри каталога Plesk PHP, иначе вы получите ошибку выше даже с исправлением.
curl.cainfo = "C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\extras\ssl\cacert.pem.txt"
Исправлено для меня. Надеюсь, это поможет кому-то, когда-нибудь где-нибудь.
Ответ 12
Для окон
У меня была такая же проблема после того, как я обновил php в окне 2008. Внезапно все мои php коды перестали работать. То, что я сделал, я opned php.ini, тогда я нашел строку
;curl.cainfo =
и я изменился на
curl.cainfo = "C:\Program Files (x86)\PHP\v7.0\cacert.pem"
(не забудьте удалить, до curl.cainfo)
и все пошло нормально. Вам нужно загрузить файл сертификата cert.pem и поместить его где угодно на своем сервере и изменить строку, как я сделал в php.ini
Ответ 13
У меня возникли некоторые проблемы с инструкциями в отношении ошибки 77.
В Windows 7, в зависимости от настроек безопасности, загруженный файл может быть заблокирован. Смотрите скриншот:
![Windows 7 File Properties]()
После того, как я разблокировал файл и обеспечил надлежащие права доступа пользователя, мне также пришлось поместить файл в следующее место:
C:\xampp\apache\bin\cacert.pem.txt
В дополнение к изменению php.ini для других сообщений по этому вопросу.
curl.cainfo="C:\xampp\php\cacert.pem.txt"
После выполнения описанных выше шагов, перезапуска Apache через панель управления XAMPP, ошибка была устранена.
Ответ 14
У меня была такая же проблема, и я пробовал каждое решение, упомянутое здесь и в других сообщениях, но никто из них не работал. Я пробовал
1) Установка правильных прав файла (не работает)
2) Изменение расширения файла (не работает)
затем я переместил файл cacert.pem внутри php/directory в xampp и перезапустил его, он работал. Надеюсь, это поможет кому-то.
Ответ 15
У меня была та же проблема. вам нужно открыть файл .pem или pem.txt с помощью простого редактора (блок-заметки) и пропустить (https://curl.haxx.se/ca/cacert.pem) в ваш файл. вы должны перезагрузить apache.
Ответ 16
Я пробовал @mahesh-singh-chouhan, @omarsafwany, решения @LyleK. но повторяйте такую же ошибку.
После этого я обновляю файл php.ini без двойных кавычек и с расширением .pem, и мне удастся получить желаемый результат с помощью кода ниже.
curl.cainfo=E:\Xampp-5.6.3\php\ext\cacert.pem
Я также добавил скриншот.
Пожалуйста, сначала попробуйте рекомендации пользователей, если не удалось использовать это.
Спасибо за решения Это создает для меня способ
@mahesh-singh-chouhan, @omarsafwany, @LyleK [! [введите описание изображения здесь] [1]] [1]
[1]: https://i.stack.imgur.com/3Pgkp.jpg
Ответ 17
Кажется, вы забыли добавить цитату для пути к файлу. У меня была такая же ошибка (77), потому что я забыл добавлять кавычки. Я решил проблему, добавив это. ex: "C:\AppServ\php\cacert.pem"
Ответ 18
вы не внимательно прочитали ошибку, теперь внимательно прочитайте
cURL, ошибка 77: ошибка установки сертификата, проверка местоположения: CAfile: D:\XAMPP\apache\bin\curl-ca-bundle.crt CApath: нет (см. http://curl.haxx.se/libcurl/c/libcurl-errors.html)
это означает, что вам не хватает файла с именем curl-ca-bundle.crt для проверки местоположения сертификата, поэтому вам просто нужно поместить этот файл (curl-ca-bundle.crt) в папку XAMPP\apache\bin \, и все в порядке ошибка 77 исчезла
curl-ca-bundle.crt, для загрузки файла вы можете воспользоваться этой ссылкой https://github.com/nirmalkumar98/nk
Ответ 19
у меня была эта проблема в Windows 2012
у меня был виртуальный выделенный сервер, который хост для Laravel
тогда у меня была эта ошибка и
- скачать этот файл с здесь
- положить в мою папку extras в php 7.2
в моем файле php.ini найдите эту строку
[Завиток]
; Значение по умолчанию для опции CURLOPT_CAINFO. Это должно быть
; абсолютный путь. curl.cainfo = extras/ssl/cacert.pem
я вставляю свой загружаемый файл в php файл вот так:
curl.cainfo = "C:\Program Files (x86)\PHP\v7.2\extras\ssl\cacert.pem"
![cacert error rest api call curl php]()
- затем сохраните php.ini
- затем перезапустите мой IIS или просто веб-сайт
![restart your iis windows 2012 cacert 77 error laravel php]()
в моем случае я просто перезапустить свой сайт
Ответ 20
Пожалуйста, обратитесь к этому URL:
https://laracasts.com/discuss/channels/general-discussion/curl-error-60-ssl-certificate-problem-unable-to-get-local-issuer-certificate?page=2
Это работает для меня в моем php.ini. Я добавил этот код:
curl.cainfo=E:\xampp\php\ca\cacert.pem
Ответ 21
Cela fonctionne bien pour moi:
1- Вы можете получить сертификат от участника: https://curl.haxx.se/ca/cacert.pem 2- Renommez le fichier cacert.pem en curl-ca-bundle.crt 3- Копировать le fichier dans chemin/vers/xampp/apache/bin 4- Redémarrer Apache
Ответ 22
Если это связано с git:
git config --global http.sslverify "false"
решит проблему.