web-dev-qa-db-fra.com

Appels Bower bloqués par un proxy d'entreprise

J'essaie d'utiliser Bower pour une application Web, mais je me trouve confronté à une sorte de problème de proxy:

D:\>bower search jquery
bower retry         Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 1.2s
bower retry         Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 2.5s
bower retry         Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 6.8s
bower retry         Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 15.1s
bower retry         Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 20.3s
bower ECONNRESET    Request to https://bower.herokuapp.com/packages/search/jquery failed: tunneling socket could not be established, cause=Parse Error

Points pertinents:

  • Je peux naviguer jusqu'à https://bower.herokuapp.com/packages/search/jquery et il renvoie une réponse json complète.
  • Je peux utiliser git pour cloner, à la fois en utilisant le protocole git: // et http (s).
  • Je peux utiliser NPM directement sans ces problèmes
  • J'ai essayé d'utiliser Fiddler pour déterminer ce qui est bloqué, mais il ne détecte aucun appel de la commande Bower. Je peux voir les appels des commandes NPM dans Fiddler.
  • J'ai parcouru la liste des problèmes de Bower, constaté des problèmes similaires, mais ils n'ont pas de solution ou ne semblent pas être les mêmes que les miens.

Des idées?

78
LJW

Merci @ utilisateur3259967

Cela a fait le travail.

Je voudrais ajouter que si vous êtes derrière un proxy qui doit être authentifié, vous pouvez ajouter le nom d'utilisateur/mot de passe à votre fichier . Bowerrc.

{
  "directory": "library",
  "registry": "http://bower.herokuapp.com",
  "proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/",
  "https-proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/"
}

AVIS l’utilisation de http: // dans https-proxy

161
Sohail

La solution pour moi est cette config .bowerrc

{
  "directory": "vendor",
  "registry": "http://bower.herokuapp.com",
  "proxy": "http://<user>:<pwd>@proxy.Host.br:8080",
  "https-proxy": "http://<user>:<pwd>@proxy.Host.br:8080",
  "strict-ssl": false
}

Utilisation du protocole http dans https-proxy plus entrée de registre avec protocole http.

N'oubliez pas de remplacer le numéro de port 8080 par le port de votre serveur proxy.

38

Êtes-vous derrière un proxy?

Avez-vous configuré les variables d’environnement HTTP_PROXY et HTTPS_PROXY?

SET HTTP_PROXY=http://yourproxyserver:yourproxyport
SET HTTPS_PROXY=http://yourproxyserver:yourproxyport
20
JamesClevenger

Essayez de changer la valeur de registre dans votre .bowerrc:

{
    "registry": "http://bower.herokuapp.com"
}
12
user3259967

Je n'avais pas de fichier .bowerrc pour configurer mes paramètres Bower. J'ai trouvé les paramètres résidant dans un fichier nommé defaults.js. trouvé sous "C:\...\bower\node_modules\bower-config\lib\util\defaults.js"
J'espère que cela aidera les autres:

var defaults = {
    'cwd': process.cwd(),
    'directory': 'bower_components',
    'registry': 'http://bower.herokuapp.com',
    'shorthand-resolver': 'git://github.com/{{owner}}/{{package}}.git',
    'tmp': paths.tmp,
    'proxy': '<<http://user:pass@proxy:port>>',  // change proxy here or at the top
    'https-proxy': '<<http://user:pass@proxy:port>>',  // change proxy here or at the top
    'timeout': 30000,
    'ca': { search: [] },
    'strict-ssl': false,
    'user-agent': userAgent,
    'color': true,
    'interactive': null,
    'storage': {
        packages: path.join(paths.cache, 'packages'),
        links: path.join(paths.data, 'links'),
        completion: path.join(paths.data, 'completion'),
        registry: path.join(paths.cache, 'registry'),
        empty: path.join(paths.data, 'empty')  // Empty dir, used in GIT_TEMPLATE_DIR among others
    }
};

module.exports = defaults;
9
sqlexception

vous pouvez essayer de suggérer @ thebignet dans le même numéro sur GitHub

Définissez proxy, https-proxy et strict-ssl configuration en .bowerrc Fichier :

{
  "proxy"       : "http://<Host>:<port>",
  "https-proxy" : "http://<Host>:<port>",
  "strict-ssl"  : false
} 

Mais vous devez exécuter Command from terminal:

git config --global url."https://".insteadOf git://
8
ahmed hamdy
"strict-ssl": false

en .bowerrc a fait pour moi

5
Nuwan Dammika

Pour Gagnez 7 .

Ce qui a fonctionné pour moi, sont les étapes ci-dessous, comme suggéré à la section this link - read #nanowizard answer.

  1. Dans .bowerrc fichier, supprimez les paramètres http_proxy/https_proxy précédemment définis. C'est important. Le contenu final de ce fichier devrait donc ressembler à: -

    {
      "directory": "app/bower_components" 
    }
    
  2. Définir les variables d’environnement dans votre ordinateur - http_proxy et https_proxy à votre proxy de pare-feu d’entreprise. Dans le cas où votre mandataire d’entreprise nécessiterait une authentification et si votre mot de passe contient des caractères spéciaux, convertissez-le en format hexadécimal comme suggéré. par ceci lien. Comme dans mon cas, échapper des caractères avec '\' n'a pas aidé. Je devais aussi redémarrer mon système.

Remarque: http_proxy et https_proxy doivent contenir la même adresse proxy que celle indiquée ci-dessous.

http_proxy = http://<user>:<password>@<your company proxy>:<port>
https_proxy= http://<user>:<password>@<your company proxy>:<port>  ->Note no 's' in http://...
4
fiberair

En plus de définir le proxy ci-dessous dans .bowerrc:

{
  "directory": "app/bower_components",
  "proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>",
  "https-proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>",
  "http-proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>",
  "strict-ssl": false,
  "registry": "http://bower.herokuapp.com"
}

Je dois exécuter les commandes suivantes pour résoudre le problème:

npm cache clean
bower cache clean
bower install
1
Arpit

Je suis derrière un pare-feu d'entreprise et je dois également spécifier un nom de domaine. Aucune de ces réponses n'a fonctionné pour moi. Voici ce que j'ai fait -

  1. CNTLM téléchargé de http://cntlm.sourceforge.net/
  2. Évidemment installé.
  3. Ouvrez cntml.ini et modifiez les éléments suivants

    Domaine votre_nom_domaine

    Nom d'utilisateur votre_nom_domaine_utilisateur

    Mot de passe your_domain_passowrd

    PassLM 1AD35398BE6565DDB5C4EF70C0593492 (décommentez ce commentaire)

    PassNT 77B9081511704EE852F94227CF48A793 (décommentez cela aussi)

    Proxy http: // localhost: 8888

  4. Accédez à services.msc et démarrez le service d'authentification CNTLM.

  5. Téléchargez Fiddler 4/2 (comme ils l'appellent).
  6. Installez cela aussi. Cela fonctionnera dans http: // localhost: 8888
  7. Maintenant, quel que soit le programme que vous exécutez (proxy), il le fait en http: // locahost: 3128 (c’est ce que CNTLM exécute.)

Dans ce cas, spécifiez http.proxy et https.proxy comme http: // localhost: 8888

Cela fonctionnera pour d'autres programmes clients. Il suffit de spécifier le proxy comme http: // localhost: 8888

1
Mukus

Le registre utilisé dans les autres réponses est maintenant obsolète. Veuillez le mettre à jour!

{
  "proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>",
  "https-proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>",
  "registry": "https://registry.bower.io"
}
1
Melchia

son travail pour moi de changer dans le fichier .bowerrc

 {
 "répertoire": "client/lib", 
 "registre": "http://bower.herokuapp.com", 
 "proxy" : "http://192.168.1.205:3228", 
 "https-proxy": "http://192.168.1.205:3228" 
} 
  • où client/lib est le répertoire d'installation où vous souhaitez installer
  • et http://192.168.1.205:3228 est votre adresse IP proxy avec le port. Le proxy d'entreprise peut être différent selon l'organisation.
1
Pankaj

Veuillez vous assurer qu'il n'y a pas de caractères spéciaux dans votre mot de passe proxy. Convertissez-le en hex. Ça marche pour moi.

0
user7067902

Pour information, dans votre fichier .bowerrc, vous pouvez ajouter un attribut no-proxy. Je ne sais pas depuis quand il est supporté mais cela fonctionne sur bower 1.7.4 et cela résout le problème de bower derrière un proxy d'entreprise avec un référentiel interne

. bowerrc:

{
  "directory": "bower_components", 
  "proxy": "http://yourProxy:yourPort",
  "https-proxy":"http://yourProxy:yourPort",
  "no-proxy":"myserver.mydomain.com"
}

Cordialement

0
loicmathieu
{
  "directory": "library",
  "registry": "http://bower.herokuapp.com",
  "proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/",
  "https-proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/"
}

Ce code a fonctionné pour moi. J'utilise Win 7 et chrome ainsi que git bash. Ici, peu de choses doivent être effacées. Cela me prend un temps considérable pour trouver les données réelles concernant le nom d'utilisateur, le mot de passe, l'adresse IP du proxy et le port Je vais le décrire étape par étape afin que tous les apprenants puissent facilement saisir le message:

  1. Créez un fichier dans le bloc-notes nommé .bowerrc dans le dossier de connexion. Vous pouvez y aller en tapant Démarrer> Exécuter>% UserProfile% et appuyez sur OK.
  2. Tapez le code ci-dessus dans le fichier .bowerrc avec les modifications suivantes:

    Remplacer <USERNAME> avec votre identifiant utilisateur ou identifiant de connexion

    Remplacer <PASSWORD> avec votre mot de passe de connexion Internet ou votre mot de passe de connexion.
    Remplacer <PROXY_IP> et <PROXY_PORT> avec l'adresse IP du proxy de travail et son numéro de port.

       **Note: There should be no angle brackets.**
    
  3. L'adresse IP du proxy doit être différente de votre propre adresse IP.

  4. Avant d'utiliser une adresse IP ou un port proxy, vous devez vérifier son bon fonctionnement en modifiant votre adresse IP et votre port proxy.

  5. Vous pouvez passer par ce lien pour connaître les détails des paramètres de proxy à l'adresse description ici

  6. À partir de ces paramètres de proxy, vous obtiendrez l'adresse IP et le port du proxy.
  7. Revérifiez toutes les entrées afin qu'elles soient toutes correctes, puis enregistrez et fermez le fichier.
  8. Ouvrez git bash et changez de répertoire dans le fichier projet, tapez commande et appuyez sur Entrée, dans mon cas, la commande git bash:

a @ un PC MINGW32/d/conFusion

$ bower installer

  1. Cela a fonctionné comme par magie.
0
ohid

Au cas où cela aiderait quelqu'un, j'avais un message d'erreur "bloqué par la stratégie de groupe".

La solution consistait à faire une exception dans CryptoPrevent, une application installée sur les ordinateurs de notre société pour empêcher les crypto lockers.

0
AlecPerkey