web-dev-qa-db-ja.com

Laravel 5 Socialite-cURLエラー77:証明書検証場所の設定エラー

私はLaravel 5でfacebookのログインを設定するためにsocialiteを使用しています。

cURL error 60: SSL certificate problem: unable to get local issuer certificate

だから私は this 答えを見つけてそれを修正しましたが、実際に合格しましたが、このエラーが出ました

cURL error 77: error setting certificate verify locations:
CAfile: /Applications/XAMPP/xamppfiles/cacert.pem
CApath: none

このエラーの原因は何ですか?!そしてそれを修正する方法?!

25
omarsafwany

私もこの問題で立ち往生しました。 php.iniファイルで証明書へのパスが正しく設定されていないことがわかりました。 .txt拡張子を忘れました。

私が持っていたもの:

curl.cainfo = "C:\xampp\php\cacert.pem"

変更したもの:

curl.cainfo = "C:\xampp\php\cacert.pem.txt"

お役に立てれば。

28
LyleK

C:\ xampp\php\cacert.pemの https://curl.haxx.se/ca/cacert.pem からcacert.pemファイルを追加します

Php.iniファイルの設定を変更します。

curl.cainfo = "C:\ xampp\php\cacert.pem

20

私のエラーは:

cURLエラー77:証明書検証場所の設定エラー:CAfile:C:\ xampp\Apache\bin\curl-ca-bundle.crt CApath:なし( http://curl.haxx.se/libcurl/cを参照) /libcurl-errors.html


これは私に適しています:

  1. 次から証明書をダウンロードします。 https://curl.haxx.se/ca/cacert.pem
  2. cacert.pemファイルの名前をcurl-ca-bundle.crtに変更します
  3. ファイルをpath/to/xampp/Apache/binにコピーします
  4. Apacheを再起動します
9
  1. この証明書を保存します( https://curl.haxx.se/ca/cacert.pemcacert.pem.txt in C:\xampp\php
  2. 追加 php.ini

    curl.cainfo = "C:\xampp\php\cacert.pem.txt"
    
  3. XAMPPを再起動することを忘れないでください(再起動するまで機能しません)

その後、正常に動作します!

8
Viktoria Brown
  1. ダウンロード( https://curl.haxx.se/ca/cacert.pem
  2. 名前を「cacert.pem」から「curl-ca-bundle.crt」に変更します
  3. 'php.ini'、remove ';'以下行:curl.cainfo="C:\xampp\Apache\bin\curl-ca-bundle.crt"

それは私のために働いた。

3
Nooovice Boooy

Php.iniファイルの二重引用符をチェックアウトします。Webからコピーして過去にコピーした場合は、二重引用符が間違っている可能性があります。

「C:\ xampp\php\cacert.pem.txt」

の代わりに

「C:\ xampp\php\cacert.pem.txt」

3
messimalex

既存の証明書を他の証明書に置き換える必要があります here 。その後:

  • 抽出してxampp\php\extに追加します
  • xampp\php\php.iniを開きます
  • この行curl.cainfo='location from the first step'をファイルの最後に追加します。
  • 再起動すると、動作するはずです。

これは source リンクです。

2
omarsafwany

エラー77に関する指示に従っていくつかの問題が発生しました。

Windows 7では、セキュリティ設定に応じて-ダウンロードしたファイルがブロックされる場合があります。スクリーンショットを見る:

Windows 7 File Properties

ファイルのブロックを解除し、適切なユーザーアクセス権を確保したら、次の場所にもファイルを配置する必要がありました。

C:\ xampp\Apache\bin\cacert.pem.txt

この問題に関する他の投稿ごとにphp.iniを変更することに加えて。

curl.cainfo = "C:\ xampp\php\cacert.pem.txt"

上記の手順を完了し、XAMPPコントロールパネルからApacheを再起動すると、エラーは解決しました。

1
Chason Arthur

これは私のために働いた

curl.cainfo = "C:\xampp\php\cacert.pem.txt"

それが何かを助けることを願っています:)

1
Herman Demsong

PleskでWindowsを実行している場合、このエラーが発生します。

Curl.cainfoパスがPlesk PHPディレクトリ内にあることを確認する必要があります。そうでない場合、修正を行っても上記のエラーが発生します。

curl.cainfo = "C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\extras\ssl\cacert.pem.txt"

私のために修正されました。これがいつかどこかで誰かを助けることを願っています。

1
Matthew Flynn

まず、「curl.cainfo」ファイルをダウンロードしてから、C:\ xampp\php\cacert.pem.txtに配置する必要があります。

次に、php.iniファイルをXamppで開き、これをコピーする必要があります=>

curl.cainfo = C:\ xampp\php\cacert.pem.txt任意の場所。

3番目にApache Serverを再起動して、localhostページを更新してください。これで正常に動作するはずです。

1
Atdhe Kurteshi

私は見つけることができるすべてのスレッドを読みました、そして、これは行方不明の部分を提供しました。

背景:この問題に遭遇して、Drupal 8を取得して、新しい開発環境で利用可能な更新を確認しようとする(沼ベース)。

  1. Mozillaから証明書データのコピーを取得します、ここにあります: https://curl.haxx.se/ca/ cacert.pem これが何を読んでいるかについてもっと知りたい場合: https://serverfault.com/questions/241046/what-is-the-cacert-pem-and-for-what -to-use-that
  2. ファイルを「cacert.pem」ではなく「cacert.pem.txt」として保存しますこれは行方不明のピースでした、LyleK!に感謝します。理由はわかりませんが、最後に.txt拡張子を付ける必要があります。そうしないと機能しません。
  3. 「cacert.pem.txt」ファイルの場所へのパスをphp.iniに明示的に追加します

例:

[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スタックを使用している場合は、再起動します。準備完了です。

1
ryugold

Windowsの場合

ウィンドウ2008でphpを更新した後、同じ問題が発生しました。突然すべてのphpコードが機能しなくなりました。私がやったこと、php.iniを選択してから行を見つけました

_;curl.cainfo =_

に変更しました

curl.cainfo = "C:\Program Files (x86)\PHP\v7.0\cacert.pem"(削除することを忘れないでください; curl.cainfoの前に)

そしてすべてが正常になりました。必要なのは、証明書ファイル cert.pem をダウンロードして、サーバー上のどこかに配置し、php.iniで行ったように行を変更することです

1
Vadim Korolov

ファイルパスに引用符を追加するのを忘れたようです。引用符を追加するのを忘れたため、同じエラー(77)が発生しました。私はそれを追加することで問題を解決しました。例:"C:\AppServ\php\cacert.pem"

0
JoshGunz

私は同じ問題を抱えていて、ここと他の投稿で言及されているすべての解決策を試しましたが、どれも機能しませんでした。私は試した
1)適切なファイル権限の設定(動作しませんでした)
2)ファイル拡張子の変更(動作しませんでした)


次に、caamp.pemファイルをxamppのphp /ディレクトリ内に移動して再起動しました。動作しました。それが誰かを助けることを願っています。

0
Abdul Mannan

私は同じ問題を抱えていました。ファイル.pemまたはpem.txtを単純なエディター(bloc-note)で開き、( https://curl.haxx.se/ca/cacert.pem )を過ぎて、ファイル。 Apacheをリロードする必要があります。

0
Marouane Mazouz

エラーを注意深く読んでいなかったので、今すぐ注意深く読んでください

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

0
Nirmal Jangir

@ mahesh-singh-chouhan、@ omarsafwany、@ LyleKソリューションを試しました。しかし、同じエラーが繰り返し発生します。

その後、php.iniファイルを二重引用符なしで更新し、。pem extensionを使用して、以下のコードで目的の結果を得ることに成功しました。

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
0
Abdul Rehman