Una ayudita para dos errores comunes en XAMPP y otros



Para aquellos web developers que tienen que trabajar en PCs con Windows una solución muy común es instalar a mano todo o utilizar un paquete como XAMPP o WAMP o similar. Hay varios pero eso no es lo relevante, el problema es el manejo (o más bien, la falta de...) de certificados en la Windola.

A veces por más que queramos no podemos instalar un Linux (mi PC de laburo tiene 6GB de RAM, olvídense de virtualizar) y siempre desarrollar en local es lo mejor, así que vamos con dos tips para dos errores comunes, usualmente cuando usamos CURL y cómo resolverlos. Y si, se que muchos ya no usan PHP porque no es "cool", pero ellos tienen otros problemas (dale Node, dejá de descargar mil paquetes para un puto hola mundo), pero todavía hay millones de desarrollos en esta plataforma.

Lo común es encontrarse con el error:

Fatal error: Uncaught CurlException: 77: error setting certificate verify locations


o similares, si justo estan trabajando con la API de Facebook (y su SDK) seguro que se les da, otro también es:

SSL certificate error: unable to get local issuer certificate


Mismo problema pero con el certificado SSL, pues bien, lo ideal en estos casos es descargar un certificado válido (el famoso cacert.pem o ca-bundle.crt) e instalarlo de forma local y manual.

Primero que nada apaguen Apache, stop al servicio, y busquen dónde está PHP en su instalación. Si utilizan XAMPP seguro es bajo C:\xampp\php\

Descarguen uno de estos certificados, este o este y lo guardan en la misma carpeta.

Luego editan el archivo php.ini y buscan dos tags en particular: curl.cainfo y openssl.cafile y agregan la ruta al certificado:

curl.cainfo="C:/xampp/ca-bundle.crt"

openssl.cafile="C:/xampp/ca-bundle.crt"


Ahora pueden reiniciar el Apache (o Nginx, lo que usen) y listo, su app de prueba de facebook o google o lo que sea que necesite certificado va a funcionar (si tienen suerte :D).

Otros posts que podrían llegar a gustarte...

Comentarios

  • Lomax    

    Windows aun existe? quien dice que PHP ya no se usa?? fuente??!?
    Podrian probar con docker!! Alguno lo usa?

    • Responder
    • Citar
    • Comentado:
  • Ricardo    

    Probaste vagrant? Si, es con máquina virtual, pero en el laburo con 4 de RAM me anda perfecto.

    • Responder
    • Citar
    • Comentado:
  • Santiago    

    Laragon es lo mejor en servers para laburar. Igual lo se los certificados tambien aplica. Gracias por el dato!

    • Responder
    • Citar
    • Comentado:
  • Te ahorro un dolor de cabeza. No uses .NET Core

    • Responder
    • Citar
    • Comentado:
  • Gustavo V    

    lo que hago es armarme una virtual con un ubuntu server (o un debian server) con la misma configuracion que la VM en DigitalOcean o en Linode y pruebo ahi.

    despues hago lo mismo en la maquina remota y listo

    • Responder
    • Citar
    • Comentado:
  • Kcho    

    Yo tengo un Vmware en la ultrabook con 4gb de RAM

    • Responder
    • Citar
    • Comentado:
  • Nico    

    Yo uso Mac... ooohhhh yeah babe

    • Responder
    • Citar
    • Comentado:
  • Kcho dijo:

    Yo tengo un Vmware en la ultrabook con 4gb de RAM


    .... y? si, podés, pero al mismo tiempo uno no usa sólo una VM y un editor de texto


    Nico dijo:
    Yo uso Mac... ooohhhh yeah babe


    esto también te puede pasar en MacOS

    • Responder
    • Citar
    • Comentado:
  • Yo me cansé de pelearme con estas instalaciones, me puse vago, demasiado vago... Trabajo directamente sobre el servidor remoto compartido funcionado y todo configurado por gente que sabe :P

    • Responder
    • Citar
    • Comentado:

Deje su comentario:

Tranquilo, su email nunca será revelado.
La gente de bien tiene URL, no se olvide del http/https
Para evitar bots, si se tardó mucho en leer la nota seguramente no sirva y tenga que intentar dos veces

Negrita Cursiva Imagen Enlace


comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador