ホームページ  >  記事  >  バックエンド開発  >  PayPal Access API で cURL を使用すると、「SSL 証明書の問題: ローカル発行者の証明書を取得できません」というエラーが発生するのはなぜですか?

PayPal Access API で cURL を使用すると、「SSL 証明書の問題: ローカル発行者の証明書を取得できません」というエラーが発生するのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-07 20:46:031004ブラウズ

Why am I getting an

cURL の PayPal Access API での SSL 証明書エラーのトラブルシューティング

PHP で cURL を使用して PayPal Access API エンドポイントにリクエストを行う場合、 SSL 証明書の問題が発生し、「SSL 証明書の問題: ローカル発行者の証明書を取得できません。」というエラー メッセージが表示される場合があります。このエラーにより、API へのアクセスが妨げられ、トークンの取得が妨げられる可能性があります。

この問題を解決するには、API との接続を保護する際の SSL 証明書の役割を理解することが重要です。 PayPal Access API では、データの暗号化を確保し、ユーザー情報を保護するために SSL が必要です。

1) ユーザーの電子メールを取得するだけの場合、PayPal Access を使用するのに SSL は必要ですか?

はい、データアクセスの範囲に関係なく、PayPal Access API を使用するには SSL が必要です。 API では、ユーザー情報を保護し、財務データの機密性を維持するために SSL が義務付けられています。

2) SSL が必要ない場合、なぜこのエラーが発生しますか?

cURL はデフォルトでシステム CA 証明書をチェックするため、SSL が明示的に必要でない場合でもエラーが発生します。使用している cURL バージョンに、信頼できる認証局のリストが古いか欠落している場合、PayPal の証明書の検証に失敗し、エラーが発生します。

解決策

この問題を解決するには、正しい SSL 認証局バンドルを使用して PHP 構成を更新する必要があります。方法は次のとおりです:

  1. 信頼できるソース (例: https://curl.se/docs/caextract.html) から認証局 (CA) 証明書の現在のリストをダウンロードします。
  2. ファイル (cacert.pem) を安全な場所に保存します。
  3. php.ini ファイルを編集し、次の行を追加します:
curl.cainfo=<path-to-cacert.pem>

例:

curl.cainfo=/var/www/html/cacert.pem
  1. Web サーバーを再起動して変更を適用します。

これらの手順が完了すると、cURL は更新された CA バンドルを使用して PayPal の証明書を検証し、正常にリクエストを実行し、ユーザーの電子メールを取得します。

以上がPayPal Access API で cURL を使用すると、「SSL 証明書の問題: ローカル発行者の証明書を取得できません」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。