频道栏目
首页 > 资讯 > 其他 > 正文

在npm中的局域网代理问题和安装淘宝npm镜像

18-08-01        来源:[db:作者]  
收藏   我要投稿

npm中代理问题:

情景一:

假如一个程序员来到新公司,发现自己的工作电脑不能上网,需要通过局域网代理的方式连接到另外一台能上网的同事电脑上去,使得你能上网

情景二:

假如你远程登陆到一台服务器,发现这台服务器不能上网,但是你又需要在npm、git、cmd中下载或者上传东西。这时候你需要将这台服务器代理到你当前能上网的本机电脑上来。

我们以npm为例,我们会发现在你npm下载模块包的时候会报错,会提示你查看代理错误或者本机网络是否设置正确

此时你需要给npm设置代理

npm config set https-proxy http://server:port
npm config set proxy http://server:port

俩者分别是设置https方式下和http方式的代理指向路径 

如果需要认证的话可以这样设置:


npm config set proxyhttp://username:password@server:port
npm confit set https-proxyhttp://username:password@server:port

username是代理上网服务器的账号, password是代理上网服务器的密码

代码中的http://server:port 为你代理电脑能上网的本机网上ip,如果有端口号就填上。比如代理地址为:123.33.22.15:808

这样npm就能成功连接到你上网的机子上了(注意即使你本机浏览器已经设置了代理,npm中也要重新进行这个设置)

npm中安装淘宝镜像:

为啥要使用淘宝镜像呢?

大家都知道国内直接使用 npm 的官方镜像是非常慢的,这里推荐使用淘宝 NPM 镜像。

淘宝 NPM 镜像是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。

你可以使用淘宝定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:

一、镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在):

1.通过config命令


npm config set registry https://registry.npm.taobao.org 
npm info underscore (如果上面配置正确这个命令会有字符串response)


registry可以理解成npm存放所有资源包的工作站,我们讲这个指向指向淘宝设置的自己的资源包工作站

2.命令行指定


npm --registry https://registry.npm.taobao.org info underscore 

3.编辑 ~/.npmrc 加入下面内容


registry = https://registry.npm.taobao.org

安装模块

从registry.npm.taobao.org安装所有模块. 当安装的时候发现安装的模块还没有同步过来, 淘宝 NPM 会自动在后台进行同步, 并且会让你从官方 NPMregistry.npmjs.org进行安装. 下次你再安装这个模块的时候, 就会直接从 淘宝 NPM 安装了.


$ cnpm install [name]

同步模块

直接通过 sync 命令马上同步一个模块, 只有 cnpm 命令行才有此功能:


$ cnpm sync connect
当然, 你可以直接通过 web 方式来同步: /sync/connect

$ open https://npm.taobao.org/sync/connect

注意点:

cnpm支持npm除了publish之外的所有命令

相关TAG标签
上一篇:弹性布局(Flex)
下一篇:git常用操作命令
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站