Mi è capitato, dovendo installare zen-cart che il gestionale e-commerce mi sputasse un errore proprio sul certificato ssl e cURL. Ecco come ho risolto! Ovviamente se state usando WAMP avete un server locale sul vostro pc quindi vi basterà modificare il file di configurazione php.ini che trovate in C:\wamp\bin\php\[versione php]\php.ini, cercate la stringa:
1 |
;extension=php_curl.dll |
eliminate il ; che precede la stringa e salvate.
A questo punto dovreste riuscire ad utilizzare le cURL su indirizzi http, ma se provate ad utilizzare le cURL con indirizzi https, queste non funzioneranno. Il perchè è semplice, dovete attivare il modulo ssl di apache e creare un certificato sulla vostra macchina.
1. Abilitare il modulo ssl di apache
Per abilitare questo modulo basterà editare il file di configurazione di apache.
Il file httpd.conf lo trovate in C:\wamp\bin\apache\[versione apache]\conf\httpd.conf, eliminate il cancelletto (#) precedente la riga qui sotto ed il gioco è fatto.
1 |
LoadModule ssl_module modules/mod_ssl.so |
2. Installare OpenSSL
Per procedere con gli step successivi, dovrete installare OpenSSL sulla vostra macchina.
3. Generare il certificato
3.1 – Aprite una shell di Windows (cmd.exe) e posizionatevi nella cartella C:\wamp\bin\apache\[versione apache]\bin.
3.2 – Create una chiave privata criptata a 1024 con questo comando: openssl genrsa -des3 -out server.key 1024, vi verrà chiesto di inserire una password a vostra scelta, inseritela.
3.3 – Rimuovere la password dalla chiave privata RSA (mantenendo una copia di backup del file originale): copy server.key server.key.org e poi openssl rsa -in server.key.org -out server.key. Vi verrà chiesta di inserire la password precedente, inseritela.
3.4 – Create un certificato auto-autenticato con la chiave RSA che avete creato: openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out server.crt -config C:\wamp\bin\apache\[versione apache]\conf\openssl.cnf
3.5 – Convertite ora il certificato .crt in .pem, con questi due comandi: openssl x509 -in server.crt -out server.der -outform DER e poi openssl x509 -in server.der -inform DER -out server.pem -outform PEM
se, giunti a questo punto, vi crea qualche problema o vi da errore dovrete ricorrere a questo comando proma di lanciare il comando al punto 3.4
set OPENSSL_CONF=c:\[PATH TO YOUR OPENSSL DIRECTORY]\bin\openssl.cfg
questo comando vi serve per settare il percorso dove ssl può trovare il suo file di configurazione.
Spero di esservi stato d’aiuto!