カテゴリー
コンピュータ

Guzzleでnable to set private key file発生

Guzzleでクライアント証明書によるリクエストでトラブった??話

環境

  • Ubuntu18
  • Guzzle 6.x
  • PHP 7.2
$client = new \GuzzleHttp\Client(
            [
                \GuzzleHttp\RequestOptions::CERT => ".crt",
                \GuzzleHttp\RequestOptions::SSL_KEY=>".key"
            ]
        );
        $res = $client->request(
            'POST',
            '<url>',
            []
        );

上記のコードを実行すると

GuzzleHttp\Exception\RequestException : Error creating resource: [message] fopen(): Unable to set private key file `証明書のパス’

とエラーが発生

  • keyファイルのアクセス権 → OK
  • 証明書と秘密鍵のマッチ → OK

Guzzleのオプション設定の書き方が間違っていると疑いcurl_init()〜で実行してみたら
Uncaught Error: Call to undefined function curl_init php-curlがインストールされていなかった💧

sudo apt install php-curlでインストールし解決

Guzzleはcurlがインストールされてなくてもフォールバック??して接続してくれるので…

参考リンク

コメントを残す