NPM没有安装包。主机名/ IP地址与证书的altnames不匹配:

问题描述 投票:39回答:3

有关解决方案,请参阅下文

它昨天工作,但我不知道发生了什么事。

NPM没有安装包。主机名/ IP地址与证书的altnames不匹配:

主持人:registry.npmjs.org。不在证书的altnames中:DNS:a.sni.fastly.net,DNS:a.sni.global-ssl.fastly.net

这就是我想要做的事情:

>> ROOT: }   npm install
up to date in 1.797s

>> ROOT: }   npm install express-messages
npm ERR! request to https://registry.npmjs.org/express-messages failed, reason: Hostname/IP doesn't match certificate's altnames: "Host: registry.npmjs.org. is not in the cert's altnames: DNS:a.sni.fastly.net, DNS:a.sni.global-ssl.fastly.net"

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/prashant/.npm/_logs/2018-09-01T11_54_09_205Z-debug.log
>> ROOT: }

我已经阅读了所有可以找到的文章/问题,并且还重新安装了Node.js和npm,但之后我也遇到了同样的问题。

操作系统:macOS v10.12(Sierra)(16A323)

日志

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node',
1 verbose cli   '/usr/local/bin/npm',
1 verbose cli   'install',
1 verbose cli   'express-messages' ]
2 info using [email protected]
3 info using [email protected]
4 verbose npm-session 54f0308df52fc8a7
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 silly fetchPackageMetaData error for express-messages@latest request to https://registry.npmjs.org/express-messages failed, reason: Hostname/IP doesn't match certificate's altnames: "Host: registry.npmjs.org. is not in the cert's altnames: DNS:a.sni.fastly.net, DNS:a.sni.global-ssl.fastly.net"
8 verbose type system
9 verbose stack FetchError: request to https://registry.npmjs.org/express-messages failed, reason: Hostname/IP doesn't match certificate's altnames: "Host: registry.npmjs.org. is not in the cert's altnames: DNS:a.sni.fastly.net, DNS:a.sni.global-ssl.fastly.net"
9 verbose stack     at ClientRequest.req.on.err (/usr/local/lib/node_modules/npm/node_modules/pacote/node_modules/make-fetch-happen/node_modules/node-fetch-npm/src/index.js:68:14)
9 verbose stack     at emitOne (events.js:116:13)
9 verbose stack     at ClientRequest.emit (events.js:211:7)
9 verbose stack     at TLSSocket.socketErrorListener (_http_client.js:387:9)
9 verbose stack     at emitOne (events.js:116:13)
9 verbose stack     at TLSSocket.emit (events.js:211:7)
9 verbose stack     at emitErrorNT (internal/streams/destroy.js:64:8)
9 verbose stack     at _combinedTickCallback (internal/process/next_tick.js:138:11)
9 verbose stack     at process._tickCallback (internal/process/next_tick.js:180:9)
10 verbose cwd /Users/prashant/Desktop/NodeJs-login-registration
11 verbose Darwin 16.0.0
12 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "express-messages"
13 verbose node v8.11.4
14 verbose npm  v5.6.0
15 error request to https://registry.npmjs.org/express-messages failed, reason: Hostname/IP doesn't match certificate's altnames: "Host: registry.npmjs.org. is not in the cert's altnames: DNS:a.sni.fastly.net, DNS:a.sni.global-ssl.fastly.net"
16 verbose exit [ 1, true ]

浏览器图片链接:https://imgur.com/a/pBANqtQ

但我已经尝试通过npm config ls -l更改SSL设置npm set strict-ssl false

它停留在这个图像链接:https://imgur.com/9LasDKT

然后这个错误:https://imgur.com/ARXj9v3

Update

我的应用运行正常。这只是我无法安装包https://imgur.com/mvKOZeq

当我尝试停止服务器时会出现一种新的错误(注意:我已经更改了上面提到的SSL设置,如果它与此有关)https://imgur.com/yPKq0n5

>> ROOT: }   npm start

> [email protected] start /Users/prashant/Desktop/NodeJs-login-registration
> nodemon app.js

[nodemon] 1.18.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node app.js`
Remember :  start mongoDB demon -->   mongod   &&   mongo
-- Server live : 3000 --
Connected to DB :  SUCCESS

^Cnpm ERR! code ELIFECYCLE
npm ERR! errno 130
npm ERR! [email protected] start: `nodemon app.js`
npm ERR! Exit status 130
npm ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/prashant/.npm/_logs/2018-09-01T13_10_55_028Z-debug.log
>> ROOT: }

日志:当我停止服务器时

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'start' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle [email protected]~prestart: [email protected]
6 info lifecycle [email protected]~start: [email protected]
7 verbose lifecycle [email protected]~start: unsafe-perm in lifecycle true
8 verbose lifecycle [email protected]~start: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/prashant/Desktop/NodeJs-login-registration/node_modules/.bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Python.framework/Versions/3.6/bin
9 verbose lifecycle [email protected]~start: CWD: /Users/prashant/Desktop/NodeJs-login-registration
10 silly lifecycle [email protected]~start: Args: [ '-c', 'nodemon app.js' ]
11 silly lifecycle [email protected]~start: Returned: code: 130  signal: null
12 info lifecycle [email protected]~start: Failed to exec start script
13 verbose stack Error: [email protected] start: `nodemon app.js`
13 verbose stack Exit status 130
13 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:285:16)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at EventEmitter.emit (events.js:214:7)
13 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at ChildProcess.emit (events.js:214:7)
13 verbose stack     at maybeClose (internal/child_process.js:925:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid [email protected]
15 verbose cwd /Users/prashant/Desktop/NodeJs-login-registration
16 verbose Darwin 16.0.0
17 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
18 verbose node v8.11.4
19 verbose npm  v5.6.0
20 error code ELIFECYCLE
21 error errno 130
22 error [email protected] start: `nodemon app.js`
22 error Exit status 130
23 error Failed at the [email protected] start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 130, true ]

.

.

.

我找到了一个适合我的解决方案

dig www.npmjs.com @1.1.1.1
  1. 将IP地址添加到/etc/hosts文件中。 转到此目录并执行sudo nano hosts

并将其添加到主机文件:1.1.1.1 a.sni.fastly.net.

javascript node.js macos express
3个回答
19
投票

根据事件报告,npmjs存在DNS问题:DNS misconfiguration cached in ISP DNS caches

要解决您的问题,请执行以下操作:

  1. dig www.npmjs.com @1.1.1.1 Linux上的示例输出 ; <<>> DiG 9.10.3-P4-Ubuntu <<>> www.npmjs.com @1.1.1.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50308 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1452 ;; QUESTION SECTION: ;www.npmjs.com. IN A ;; ANSWER SECTION: www.npmjs.com. 128 IN CNAME www.npmjs.com.cdn.cloudflare.net. www.npmjs.com.cdn.cloudflare.net. 151 IN A 104.16.109.30 www.npmjs.com.cdn.cloudflare.net. 151 IN A 104.16.110.30 ;; Query time: 2 msec ;; SERVER: 1.1.1.1#53(1.1.1.1) ;; WHEN: Sat Sep 01 14:05:56 UTC 2018 ;; MSG SIZE rcvd: 120 获得解析的IP地址:104.16.109.30在我的情况下 在/etc/hosts文件中添加新条目 echo“104.16.110.30 www.npmjs.com registry.npmjs.org”>> / etc / hosts 不要忘记在周末结束时删除此行。

28
投票

将以下行添加到/etc/hosts文件中:

104.16.16.35 registry.npmjs.org

3
投票

尝试更改默认注册表:

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

对于那些坚持使用mup部署的人:

docker: { // change to 'abernix/meteord:base' if your app is using Meteor 1.4 - 1.5 image: 'abernix/meteord:node-8.4.0-base', buildInstructions: [ 'RUN npm config set strict-ssl false' ] },

© www.soinside.com 2019 - 2024. All rights reserved.