前言(日常废话)
心血来潮(闲着没事干),想在自己的云服务器上运行node来处理跨域问题,然后踩了一些坑后,终于可以在服务器上全局使用npm和node命令了。
能解决多亏了写这两篇帖子的大佬,万分感谢,膜拜大神。
如何在云服务器上执行自己的node.js程序
linux,软链接配置node,npm全局命令
其实上面两个大神的帖子按顺序看完,就能完成本文的实现效果了,但是!看官大佬爷都打开我的帖子了,也不能让您再多摁几下鼠标或者是多摁几下手指,所以、我还是在下面把步骤顺了一遍。
正文
本文最终要达成的效果是,在云服务器上全局使用node和npm命令,比如说查询版本。
这里假设你已经有了一个云服务器,我这里使用的是阿里云的轻量应用服务器,进入阿里云的轻量应用服务器管理控制台,打开使用的服务器并进行远程连接。
下载node
先进入到服务器的根目录:
cd /
然后创建一个你想要的安装node的文件夹(下面例子为soft)
mkdir soft
然后进入刚刚创建的文件夹
cd soft
接着再创建一个放node的文件夹(下面例子为node)
mkdir node
同样,进入刚刚创建好的文件夹
cd node
然后就可以开始我们的主题,下载node安装包了(下面例子中的12.18.2是我在写这篇文章时node的推荐下载版本,你可以下载你想要安装的版本。注意:有两个地方填版本号!!!
)
wget https://npm.taobao.org/mirrors/node/v12.18.2/node-v12.18.2-linux-x64.tar.xz
解压下载好的node包
下载完成以后,就是解压啦(同样的,12.18.2是版本号,要和你刚刚下的一致,不然会找不到文件解压。后面出现12.18.2的都是这个情况,就不再重复描述了)
tar -zxvf node-v12.18.2-linux-x64.tar.xz
解压完成后就可以用下面的命令查看到node-v12.18.2-linux-x64/bin里面有node、npm和npx
cd node-v12.18.2-linux-x64/bin/ && ls
进行全局使用配置
上面步骤完成后其实已经算是安装完成了,但是运行npm -v 或者是 node -v都无法实现查询版本功能,也就是说无法使用npm命令来进行一些操作。因为我们就像我们在windows里面安装node时需要进行配置一样,在Linux中我们也需要进行配置。
其实就是进行一个软连接,软连接就相当于在全局定义一个指针(或者说是在电脑桌面定义一个文件打开的快捷方式)。
输入第一个帖子里面的软连接代码(根据个人理解:代码中 ln -s
代表着软连接,后面跟着的第一个地址是你要指向的目录,第二个地址是你要把这个’快捷方式’放在哪里,也就是ln -s 指针指向地址(快捷方式打开的地址) 指针所在的地址(快捷方式所要创建在哪的地址)
)
ln -s ./node-v12.18.2-linux-x64/bin/npm /usr/local/bin/npm
ln -s ./node-v12.18.2-linux-x64/bin/node /usr/local/bin/node
坑1
但是!
我跟着上面两个软连接的地址无法进行全局访问
,只能cd到/usr/local/bin目录下然后运行./node -v进行版本号查看(无法验证我这个是不是个例)。
然后,历经‘千辛万苦’,我找到了第二个帖子,将软连接的地址放到了根目录的bin下面
ln -s ./node-v12.18.2-linux-x64/bin/npm /bin/npm
ln -s ./node-v12.18.2-linux-x64/bin/node /bin/node
运行后,成功获取到node的版本号和npm的版本号
坑2
这里还有个小问题,如果你是跟着我的顺序敲下来的,那你在进行第二次软连接的时候会提示创建失败,你已经创建过了该连接,这个时候你需要把刚刚第一次的连接给删掉,cd进刚刚创建连接的目录:
cd /usr/local/bin
然后运行软连接删除命令
rm -rf node
rm -rf npm
然后你就可以继续进行软连接了。
写给看贴的你
本人学识短浅,如有错误地方请指正批评;如有涉及侵权,请手下留情,联系本人,看见即删(手动狗头保命)。
祝各位看官大佬们身体健康、诸事顺心、仙运荣昌、少写bug多加薪…