I have a production and a test server. Then I have a 3rd party program with a test and a production environment.
Tests are bond together and productions are bond together.
3rd party production server has a DigiCert Global Root G2
and the test server has a DigiCert Global Root CA
.
My servers share the environment configuration and both certificates are in /etc/ssl/certs
.
I call it with GuzzleHttp.
$client = new Client([
'base_uri' => 'www.example.com',
]);
$data = [
'json' => $jsonData
'expect' => false,
'auth' => [username, password, basic]
];
$client->request('POST', 'api/endpoint1', $data);
The production server works fine but the test server throws error cURL error 60: SSL certificate: unable to get local issuer certificate
.
There is a certificate chain (not sure how this works):
0 s:/CN=www.example.com
i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=RapidSSL RSA CA 2018
1 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=RapidSSL TLS RSA CA G1
i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
- I need to find out whose fault is that - mine or 3rd party?
- How can it be fixed?