Inicio·Mensajes de error

npm · npm

El mensaje

npm ERR! request to https://registry.npmjs.org/express failed, reason: unable to verify the first certificate

Qué significa

La conexión TLS falló: la cadena de certificados que presentó el servidor sube hasta una autoridad en la que node no confía. De forma abrumadora es una red corporativa cuyo proxy abre el tráfico y lo vuelve a firmar con su propio certificado; a veces es un servidor que no envió su certificado intermedio. Enseñarle a npm la raíz de tu empresa con npm config set cafile es el arreglo correcto. strict-ssl false también hace desaparecer esta línea, pero desactiva por completo la comprobación de certificados, lo que permite que cualquiera en el camino te sirva paquetes alterados: no lo uses.

El arreglo

npm config set cafile /etc/ssl/corp-ca.pem
Lo imprime
npm
npm
20

En npm la causa está en la primera línea code XXXX y no en las seis últimas líneas npm ERR!, y cuando el fallo viene del árbol de dependencias o de una compilación nativa y no de tu código, borrar node_modules y reinstalar resuelve la mitad de los casos.

Cómo leer un mensaje de error

  • Lee desde la primera línea. Cuanto más abajo, más son las tripas de la herramienta; la causa suele estar arriba.
  • Si hay un archivo y un número de línea, empieza ahí: no el marco superior de la pila, sino la línea más alta que nombre un archivo tuyo.
  • Busca el mensaje literal, pero quita antes tus rutas y nombres de variables: eso es lo que impide que la búsqueda coincida.
  • La misma condición se redacta distinto según la versión. Si los resultados no cuadran, añade el número de versión.
  • Antes de pegar un arreglo, comprueba qué descarta. Algunos no se pueden deshacer.

Preguntas frecuentes

Q. ¿Qué significa «npm ERR! request to https://registry.npmjs.org/express failed, reason: unable to verify the first certificate»?

La conexión TLS falló: la cadena de certificados que presentó el servidor sube hasta una autoridad en la que node no confía. De forma abrumadora es una red corporativa cuyo proxy abre el tráfico y lo vuelve a firmar con su propio certificado; a veces es un servidor que no envió su certificado intermedio. Enseñarle a npm la raíz de tu empresa con npm config set cafile es el arreglo correcto. strict-ssl false también hace desaparecer esta línea, pero desactiva por completo la comprobación de certificados, lo que permite que cualquiera en el camino te sirva paquetes alterados: no lo uses.

Q. ¿Cómo se arregla?

npm config set cafile /etc/ssl/corp-ca.pem — antes de ejecutarlo, mira arriba qué descarta este comando.

Q. ¿Qué herramienta lo imprime?

npm. Está en npm y el mensaje tiene 13 palabras.

Errores cercanos