Resolução de Erro de Carregamento de Certificado em cURL

EXIBINDO RESPOSTAS:

Avatar discord do usuario rodrigo_90439

rodrigo_90439

@guilherme_efi Parece que não está carregando o certificado, pode me ajudar a resolver?
"Erro no cURL: could not load PEM client certificate, OpenSSL error error:80000002:system library::No such file or directory, (no key found, wrong pass phrase, or wrong file format?)"

Avatar discord do usuario hiagosilvas

hiagosilvas

Envia o cURL ou a configuração realizada na SDK (ocultando credênciais Rodrigo). Talvez alguém ja tenha passado por isso e consiga te ajudar

Avatar discord do usuario rodrigo_90439

rodrigo_90439

$config = [
"certificado" => "./certificados/homologacao-certificado_cert.pem",
"client_id" => "???",
"client_secret" => "???"
];

$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://pix-h.api.efipay.com.br/oauth/token',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"grant_type": "client_credentials"
}',
CURLOPT_SSLCERT => $config["certificado"],
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

if(curl_errno($curl)) {
echo 'Erro no cURL: ' . curl_error($curl);
} else {
echo $response;
}

Avatar discord do usuario rodrigo_90439

rodrigo_90439

Deixei meu certificado aqui:

Avatar discord do usuario rodrigo_90439

rodrigo_90439


imagem enviada na mensagem pelo usuario rodrigo_90439

Avatar discord do usuario hiagosilvas

hiagosilvas

Seu script php tá no / do SO?

Avatar discord do usuario hiagosilvas

hiagosilvas

Ou é FTP? E o / é o diretório da aplicação?

Avatar discord do usuario rodrigo_90439

rodrigo_90439

FTP, deixei na raiz.

Avatar discord do usuario hiagosilvas

hiagosilvas

Ah sim, seu script php está em qual diretório?

Avatar discord do usuario rodrigo_90439

rodrigo_90439

Subdomínio: cliente....

Avatar discord do usuario hiagosilvas

hiagosilvas

Mas fisicamente no disco, tá em qual diretório?

Avatar discord do usuario hiagosilvas

hiagosilvas

Caso o seu script esteja exatemente dentro dessa pasta, talvez isso funcione.

Avatar discord do usuario hiagosilvas

hiagosilvas

php
$config [
"certificado" => "../certificados/homologacao-certificado_cert.pem",
"client_id" => "???",
"client_secret" => "???"
];

Avatar discord do usuario rodrigo_90439

rodrigo_90439

Hiago deu certo, muito obrigado pela ajuda 🙂