Necesito ejecutar la última versión de Node y NPM en Windows. Instalé Node 0.5.8 y descargué las fuentes de NPM de GitHub. Los pasos que seguí para instalar NPM se enumeraron en su sitio de GitHub pero tengo un problema al ejecutar el siguiente comando:
node cli.js install npm -gf
pero falla con el siguiente mensaje de error:
Error: connect UNKNOWN
at errnoException (net_uv.js:566:11)
at Object.afterConnect [as oncomplete] (net_uv.js:557:18)
System Windows_NT 5.1.2600
command "...\\Node\\bin\\node.exe" "...\\npm\\cli.js" "install" "npm" "-gf"
cwd ...\npm
node -v v0.5.8
npm -v 1.0.94
code UNKNOWN
Creo que esto es un problema porque necesito autenticación en mi proxy para conectarme a Internet. Pero no encontré ninguna manera de decirle al instalador que use mis credenciales para iniciar sesión. ¿Existe la posibilidad de proporcionar mi IP proxy y la información de inicio de sesión para la instalación de npm tal vez a través de argumentos de línea de comandos?
Puedo proporcionar el registro completo (pero parece que no tengo más información relevante) usando pastebin si es necesario.
Respuestas:
set http_proxy
funcionó muy bien para mí, pero tuve que ingresarlo cada vez que abría el símbolo del sistema. Así que tuve que combinar varias respuestas y ahora la mía es permanente.Mi secuencia fue la siguiente:
C:\Users\YourUserName
.npmrc
proxy = http://domain\\username:password@ip:port
proxy = http://username:password@ip:port
npm
Otros han tenido un éxito extra con el siguiente comando adicional:
strict-ssl = false
* Debería poder usar una dirección IP o la URL del proxy en lugar de "IP" arriba.
Es posible que deba ajustar un poco su cadena de proxy, pero esto hizo que no tuviera que agregar esto cada vez.
Aclamaciones
fuente
proxy = http://ip:port/ https-proxy = http://ip:port/ registry = http://registry.npmjs.org/ strict-ssl = false
domain\\user:password@urltoproxy:port
sin embargo, cuando ejecutonpm install
los cambios de opción adomain/user:password@urltoproxy:port
Entonces, ¿cómo puedo solucionar esto?-ssl=false registry=http://registry.npmjs.org/ proxy=http://domain\\username:password#@proxy.url:8080
luego, cuando configuro desde config connpm config get proxy
:http://domain/username:password#@proxy.url:8080
tenga en cuenta que la barra invertida escapada '\\' cambia a una barra diagonal '/'Quizás establecer una variable de entorno funcione para usted:
(En mi caso, esto resuelve el "conectar DESCONOCIDO", pero obtengo un error completamente diferente de "colgar el socket". También intenté configurar la variable de entorno HTTPS_PROXY, pero obtuve el mismo resultado).
fuente
set HTTP_PROXY=http://domain\user:[email protected]:port
Tuve este problema idéntico y esto es lo que hice para que esto funcione:
C:\Users\YourUserName
.npmrc
Y su entrada leerá:
Intenta el comando
node cli.js install npm -gf
nuevamente.fuente
node config set proxy http://username:password@server:port
~/.npmrc
archivo como el anterior, que le dice a npm que use elhttp://
registro en lugar dehttps://
, y luego establezca mihttp_proxy
variable de entorno enhttp://myusername:[email protected]:1234
Después de un poco de investigación, podría usarlo de esta manera:
Instale el servidor proxy de autorización NTLM u otro servidor proxy para NTLM, como Cntlm. Personalmente, prefiero el servidor Python, porque puedo jugar con él, y el rendimiento no es un problema.
Configurar la configuración; Tenga en cuenta que en mi caso, tenía que habilitar el modo LM y NT, y sospecharía que es el caso normal, hoy en día.
Establezca la variable de entorno http_proxy y https_proxy para que apunte a su proxy local:
set http_proxy = "localhost: 5865"
set https_proxy = "localhost: 5865"
npm debería funcionar ahora, por supuesto, debería ejecutarse desde un shell donde se definen las variables de entorno anteriores.
fuente
Lo siguiente funcionó para mí.
En Windows 7:
Esto debería crear un archivo nombrado
.npmrc
en laC:/users/<username>
carpeta.fuente
Escriba esto en la línea de comando:
npm set proxy http://user:pass@ip:port
npm set https-proxy http://user:pass@ip:port
NO OLVIDE INCLUIR HTTP: // antes de su nombre de usuario. Funcionó para mi.
fuente
Este problema se resolvió por mí después de crear el archivo .npmrc como se indicó anteriormente y luego ejecutar el comando adduser y seguir las indicaciones de cmd.
Ejecute el siguiente comando para ver si tiene un nombre de usuario autorizado:
fuente
Cada una de las respuestas anteriores necesita que el usuario escriba su contraseña en un archivo de texto o en una variable de entorno.
Personalmente no me gustó una solución como estas, por su enfoque inseguro. Así que intenté escribir una aplicación que inyecte el token Kerberos del usuario actual en los intercambios entre el cliente (npm, bower, git) y el proxy. Dicho esto, Active Directory es solo una implementación patentada de Kerberos.
Uso este software todos los días, en un host de Windows 8.1. Puede encontrar el código (golang) y los primeros binarios de lanzamiento en https://github.com/nilleb/authentication-proxy .
fuente
Las tres cosas me funcionaron en .npmrc
fuente
Al menos en Windows, me funciona con la siguiente configuración:
es decir, (1) use en
%5C
lugar de\
(como se sugiere en otra parte) y (2) use la dirección IP en lugar del nombre de la máquina local para el servidor proxy.fuente
Obtendrá el host proxy y el puerto del administrador o soporte de su servidor.
Después de eso configurar
Si hay algún carácter especial en la contraseña, intente con% urlencode. Por ejemplo: - la libra (hash) debe reemplazarse por% 23.
fuente
La solución que funcionó para mí es la siguiente:
npm config set http_proxy http: // nombre de usuario : contraseña @ host / IP : puerto
npm config set proxy http: // nombre de usuario : contraseña @ host / IP : puerto
reemplazar los parámetros con los valores, en mi caso
nombre de usuario : (vacío)
contraseña : (vacía)
host / IP : 192.36.36.110
puerto : 8080
entonces mis comandos son
npm config set http_proxy http: //: @ 192.36.36.110: 8080
npm config set proxy http: //: @ 192.36.36.110: 8080
fuente
CNTLM no funcionó para mí. Intenté todas las combinaciones posibles. NPM estaba dando error de autenticación. Fiddler vino a rescatarme y me ahorró tiempo. Es fácil de instalar y configurar. Establezca la regla de Fiddler en autenticado automáticamente. En .npmrc establezca estos
Funcionó para mí :)
fuente
Lo que funcionó para mí fue lo siguiente:
No tuve que ingresar ningún nombre de usuario o contraseña, simplemente la URL del archivo PAC.
fuente