Estoy probando todas las formas de crear una aplicación de reacción. Lo he intentado con maven y ahora lo estoy intentando con el sistema de compilación crate-react-app de Facebook Incubators.
Cuando intenté ejecutar el comando create-react-app my-app
en el entorno npm, funcionó en mi sistema personal sin problemas. Pero cuando probé el mismo comando en mi entorno de trabajo, encontré este error en el símbolo del sistema
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! code UNABLE_TO_GET_ISSUER_CERT_LOCALLY
npm ERR! unable to get local issuer certificate
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <https://github.com/npm/npm/issues>
node.js
reactjs
npm
create-react-app
Dinesh
fuente
fuente
sudo
cuando corrínpm install aws-sdk
. Correr mesudo npm install aws-sdk
provocó este error.Respuestas:
Una solución rápida de la búsqueda en Internet fue
npm config set strict-ssl false
, afortunadamente, funcionó. Pero como parte de mi entorno de trabajo, estoy restringido a establecer el indicador estricto-ssl en falso.Más tarde encontré una solución segura y funcional,
esto funcionó a la perfección y recibí un mensaje de éxito
Happy Hacking!
al no establecer el indicador estricto-ssl en falso.fuente
sudo
cuando corrínpm install aws-sdk
. Correr mesudo npm install aws-sdk
provocó este error.npm config set strict-ssl false
y,npm config set registry http://registry.npmjs.org/
pero todavía recibía el error al ejecutar,sudo npm install aws-sdk
pero cuando dejé caer lasudo
pieza y simplemente la ejecuténpm install aws-sdk
, funcionó.npm config set strict-ssl false
no funciona. Creo que esto es algo que el equiponode.js
y elnpm
equipo deberían analizar y documentar con una solución adecuada si no se puede solucionar para ellos.lo que puede estar sucediendo es que su empresa descifra cierto tráfico y lo vuelve a cifrar con su certificado (que probablemente ya tenga en su llavero o certificados raíz de confianza)
si está utilizando el nodo 7 o posterior, he encontrado que esta solución es compatible con node y node-gyp (para Windows deberá hacer esto de manera diferente, pero básicamente solo necesita agregar esta variable de entorno):
export NODE_EXTRA_CA_CERTS="absolute_path_to_your_certificates.pem"
(en Windows es posible que deba eliminar las comillas; consulte los comentarios)el archivo pem puede tener varios certificados: https://nodejs.org/api/cli.html#cli_node_extra_ca_certs_file
asegúrese de que sus certificados estén en el formato pem adecuado (necesita saltos de línea reales, no literal
\n
)Parece que no puedo hacer que funcione con rutas relativas (
.
o~
)Esta solución básicamente le dice a npm y node-gyp que usen la verificación contra las CA regulares, pero también permitan este certificado cuando lo encuentre
Idealmente, podría utilizar los certificados de confianza de su sistema, pero desafortunadamente este no es el caso.
fuente
Cambiar la URL del repositorio de NPM a HTTP funciona como una solución rápida, pero quería usar HTTPS.
En mi caso, el poder de mi empleador (ZScaler) estaba causando problemas (ya que actúa como un MITM, causando problemas de verificación de certificación)
Olvidé que encontré un script que ayuda con esto y Git (para clonar repositorios de GitHub a través de HTTPS tenía el mismo problema) y lo bifurqué para mi uso
Básicamente, hace lo siguiente para git:
y para Node, se suma
proxy=http://gateway.zscaler.net:80/
al final dec:\Users\$USERNAME\npm\.npmrc
Eso me resolvió el problema.
fuente
ip.zscaler.com
el nombre de la nube y configúrelo en la URL. Por ejemplo: si dicezscalertwo.net
, reemplácelo con la siguiente URL:gateway.zscalertwo.net
Después de probar todas las soluciones que pude encontrar:
npm config set strict-ssl=false
npm config set registry http://registry.npmjs.org/
npm config set cafile /path/to/your/cert.pem
set NODE_TLS_REJECT_UNAUTHORIZED=0
La solución que parece estar funcionando mejor para mí ahora es usar la variable de entorno NODE_EXTRA_CA_CERTS que extiende las CA existentes en lugar de reemplazarlas con la opción cafile en su archivo .npmrc. Puede configurarlo ingresando esto en su terminal:
NODE_EXTRA_CA_CERTS=path/to/your/cert.pem
Por supuesto, configurar esta variable cada vez puede ser molesto, así que la agregué a mi perfil de bash para que se establezca cada vez que abra la terminal. Si aún no tiene un
~/.bash_profile
archivo, cree uno. Luego, al final de ese archivo, agregueexport NODE_EXTRA_CA_CERTS=path/to/your/cert.pem
. Luego, elimine la configuración de cafile en su .npmrc.fuente
process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0;
Créame, esto funcionará para usted:
fuente
Tuvo el mismo error. Parece que está relacionado con los certificados SSL. Si está utilizando NPM para paquetes públicos (no necesita la seguridad de HTTPS), puede desactivar la validación de clave SSL estricta con el siguiente comando.
Esta podría ser la solución más simple si solo está buscando instalar algunos paquetes disponibles públicamente una vez.
fuente
Tuve este error cuando intenté actualizar npm, pero tenía una versión realmente antigua (¡1.3.6!) Instalada desde yum en AWS Linux. Pude instalar manualmente una versión más nueva de npm y todo se solucionó.
fuente
El siguiente código me funcionó perfectamente aquí, haga http solo en lugar de https
fuente
En mi caso, en algún momento configuré mi configuración global para usar un certificado que estaba destinado a un proyecto.
npm config list
Abrí el archivo, eliminé la línea y volví a
npm install
trabajar.fuente
obtuve el siguiente error
El siguiente comando resolvió el problema:
fuente