2011-08-24 12 views
22

ottengo questo errore (percorso diritti di accesso?):PHP con l'SSL CA cert

"Problema con il CERT SSL CA (percorso diritti di accesso?)"

Nel fare:

$curl = curl_init('https://example.com' . ($method == 'GET' && $params ? '?' . $params : '')); 

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); 
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); 
$response = curl_exec($curl); 

print curl_error($curl) 

Funziona correttamente su un altro server.

SSL utilizza NSS. PHP 5.3.6

+0

simile a questa domanda: http: // stackoverflow.com/questions/26099849/amazon-marketplacewebserviceorders-requests-suddenly-failing-php-curl-giving-ss – Marty

+0

So che questa è una piccola domanda, ma potresti scegliere una "risposta corretta"? – gillytech

+0

già scelto ciò che ha funzionato per me. –

risposta

0

ottenuto lavorando rinominando il nssdb:

mv /etc/pki/nssdb /etc/pki/nssdb.old 
+0

Questa soluzione non ha funzionato per me per qualche motivo. Sembra che il problema sia stato causato dall'aggiornamento di libcurl. Nel mio caso non voglio alcuna convalida, ma non riesco a essere in grado di disabilitare l'intera cosa. Qualcuno ha altri suggerimenti? – Greg

22

avuto questo accada a due server che utilizzano PayPal IPN, entrambi a circa lo stesso tempo.

La correzione era di riavviare Apache.

+1

Anche questo è accaduto. Era successo un aggiornamento automatico, che creava un nuovo /etc/pki/nssdb/pkcs11.txt (e spostava il vecchio in /etc/pki/nssdb/pkcs11.txt.rpmnew). Il contenuto del file era lo stesso. Non ci sono stati avvisi o altre informazioni nei log. Non ho idea se l'aggiornamento automatico è stato il colpevole però. Comunque, un riavvio di php-fpm ha risolto il problema. –

+5

Vale la pena menzionare per me almeno che un semplice e agevole riavvio di Apache non è stato sufficiente. Ho dovuto riavviare il servizio (ad esempio 'servizio httpd restart').Non so perché questo abbia fatto la differenza, ma è così. – Johno

+1

Per coloro che usano nginx + php-fpm su CentOS: 'sudo service php-fpm restart' dovrebbe fare il trucco – Curious

11

Se si ottiene "Problema con il certificato SSL CA (percorso? Diritti di accesso?)", È possibile che si sia cancellato tutto da /etc/pki/tls/certs/ o siano state impostate autorizzazioni non valide (CHMOD).

Se si utilizza RHEL/CentOS, provare yum reinstall openssl ca-certificates -y

+1

Questo, non il riavvio/riavvio mi ha aiutato. –

+0

E probabilmente anche 'apt-transport-https' – Jonathan

7

appena aggiornato a PHP 5.5.17 e questo è quando cominciarono i problemi. Il server esegue le transazioni PayPal e CURL ha iniziato a non riuscire su questo errore: "Problema con il certificato di certificazione SSL CA (percorso? Diritti di accesso?)".

Ho provato a rigenerare i certificati, modificando le opzioni di arricciatura, niente mi stava portando da nessuna parte. La soluzione era semplicemente riavviare il server (CentOS 6.5 nel mio caso). Spero che questo aiuti qualcuno.

+2

Concordo; riavviare il server ha risolto il problema anche per me :) – Latheesan

1

Mi succede dopo l'aggiornamento dei pacchetti.

Una volta riavviato l'apache è stato corretto.

Quindi l'ho installato sul server di produzione e l'ho riavuto. Questa volta è stata messa presso i certificati sotto/etc/PKI/TLS/certs/

il backup dei file e questo comando sarà risolvere il problema:

curl http://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/certs/ca-bundle.crt

Problemi correlati