bower install self_signed_cert_in_chain

2019-03-09 21:02发布

问题:

I am building a angular app in windows, using git bash, so far I have been able to scaffold using yo, no issues, however when I am trying to issue the following command. Can someone please point me to resolve this issue.

bower install angular-bootstrap

I am getting the following error:

bower error         Request to https://bower.herokuapp.com/packages/angular-reso
urce failed: SELF_SIGNED_CERT_IN_CHAIN

Stack trace:
Error: Request to https://bower.herokuapp.com/packages/angular-resource failed:
SELF_SIGNED_CERT_IN_CHAIN
    at createError (c:\Users\arusarka\AppData\Roaming\npm\node_modules\bower\nod
e_modules\bower-registry-client\lib\util\createError.js:2:15)
    at Request._callback (c:\Users\arusarka\AppData\Roaming\npm\node_modules\bow
er\node_modules\bower-registry-client\lib\lookup.js:97:29)
    at self.callback (c:\Users\arusarka\AppData\Roaming\npm\node_modules\bower\n
ode_modules\request\request.js:129:22)
    at Request.EventEmitter.emit (events.js:95:17)
    at Request.request.emit (c:\Users\arusarka\AppData\Roaming\npm\node_modules\
bower\node_modules\bower-registry-client\node_modules\request-replay\index.js:69
:33)
    at ClientRequest.self.clientErrorHandler (c:\Users\arusarka\AppData\Roaming\
npm\node_modules\bower\node_modules\request\request.js:239:10)
    at ClientRequest.EventEmitter.emit (events.js:95:17)
    at CleartextStream.socketErrorListener (http.js:1528:9)
    at CleartextStream.EventEmitter.emit (events.js:95:17)
    at SecurePair.<anonymous> (tls.js:1368:19)

回答1:

It finally worked for me. These are the steps I took:

  1. Uninstall bower from npm npm uninstall bower or npm uninstall -g bower
  2. Install bower-canary from npm npm install bower-canary or npm install -g bower-canary
  3. Create .bowerrc in your project directory with the following content to turn off SSL:
{ "strict-ssl": false,  "https-proxy": "" }
  1. Then try again bower install angular-bootstrap


回答2:

Search for .bowerrc in your npm folder of Appdata, open the file and include the properties mentioned by natdico as follows:

{
    "directory": "bower_components",
    "strict-ssl": false, 
    "https-proxy": ""
}


回答3:

If you have access to the self-signed CA certificate that is part of your chain, you can add it to your .bowerrc file like so:

{
  ...
  "ca": "/path/to/cacert.pem",
  ...
}

rather than disabling SSL, as other answers have suggested.

Disabling SSL will get you past this issue. However, doing so introduces the risk of creating some greater issues for yourself down the road.

documentation from Bower



回答4:

Try setting the registry config for npm by running the following command:

npm config set registry http://registry.npmjs.org/

I tried and it worked for me.



回答5:

Add the lines below into your .bowerrc file in your project directory:

"strict-ssl": false,
 "https-proxy": "" .

your .bowerrc should look like this:

{
 "directory": "app/bower_components",
 "strict-ssl": false,
 "https-proxy": "" 
 }