ubuntu下怎么安装nodejs并实现反向代理服务器

55次阅读
没有评论

共计 3291 个字符,预计需要花费 9 分钟才能阅读完成。

今天丸趣 TV 小编给大家分享一下 ubuntu 下怎么安装 nodejs 并实现反向代理服务器的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一. 新版 nodejs 安装

这里强烈推荐使用 nvm(node 版本管理器),其它方式的安装或多或少都有些问题。

1. 通过 git 指令下载 nvm

执行指令如下,我们把 nvm 下载到 /root/git/ 中去(记得要先安装 git):

[root@vm-22-180-ubuntu~]#pwd
/root
[root@vm-22-180-ubuntu~]#mkdir git
[root@vm-22-180-ubuntu~]#cd git
[root@vm-22-180-ubuntu~]#git clone https://github.com/creationix/nvm.git

2. 配置环境变量

这里是要修改 .bashrc 文件,如果不清楚其位置,可以回到根目录执行

#find . -name  *.bashrc  -print

来搜索和获取结果:

然后通过 vim 修改 ./etc/skel/.bashrc 文件(不过我个人是上方三个文件都做了同样的修改),在文件开头加入下面两行:

export nvm_nodejs_org_mirror=https://npm.taobao.org/mirrors/node
source ~/git/nvm/nvm.sh

其中第一行是修改 nvm 镜像路径到阿里,第二行才是把 nvm 添加到系统环境中去。

保存后执行指令让配置生效:

#source .bashrc

3. 直接用 nvm 安装 nodejs

执行指令

#nvm install node

便可安装新版本的 nodejs,安装成功后,最新版的 node 就装在服务器上了:
二. 安装 nginx

这里和 node 一样不推荐使用 apt-get/aptitude 形式安装,建议走源码编译安装。

1. 依赖安装和下载

确保安装了 gcc-c++  和 libpcre3-dev:

#aptitude install gcc-c++ libpcre3-dev

然后咱定位到 /home/ubuntu 去下载一些依赖包,并解压缩到该文件夹下:

#wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
#wget http://prdownloads.sourceforge.net/libpng/zlib-1.2.8.tar.gz
#wget https://www.openssl.org/source/openssl-1.1.0c.tar.gz
#tar -xzvf pcre-8.36.tar.gz
#tar -xzvf zlib-1.2.8.tar.gz
#tar -xzvf openssl-1.1.0c.tar.gz

这里咱们下载的是 nginx 模块所依赖的 pcre/zlib/openssl,压缩包的下载地址都是在它们对应官网中找到的。

需要留意的点是,pcre 不要下载使用 pcre2 的,否则会导致 nginx 编译过程报错:
推荐使用上方代码段提供的 pcre-8.36 版本。

2. 下载和解压 nginx

先到 nginx 官网找最新的源码包下载路径,然后下载下来:

[root@vm-22-180-ubuntu~]#cd
[root@vm-22-180-ubuntu~]#pwd
/root
[root@vm-22-180-ubuntu~]#wget http://nginx.org/download/nginx-1.10.2.tar.gz

然后解压此压缩包,并进入到文件夹 /nginx-1.10.2 去:

[root@vm-22-180-ubuntu~]#tar -xzvf nginx-1.10.2.tar.gz
[root@vm-22-180-ubuntu~]#cd nginx-1.10.2

3. 编译和安装

按顺序执行如下三条指令:

#./configure --prefix=/home/ubuntu/nginx --with-pcre=/home/ubuntu/pcre-8.36 --with-zlib=/home/ubuntu/zlib-1.2.8 --with-openssl=/home/ubuntu/openssl-1.1.0c
#make
#make install

它们的作用分别是:生成 c 源码文件和 makefile 文件、生成二进制文件、将 nginx 安装到指定目录(/home/ubuntu/nginx)。

注意 ./configure 指令后的参数分别指定了 nginx 的安装目录及相关依赖模块地址。

自此,nginx 就安装完毕啦~

三. 启动 nginx

执行

#/home/ubuntu/nginx/sbin/nginx

可直接启动 nginx 服务,这时候在任意地方执行:

wget http://127.0.0.1

都可以下载到一份 index.html:
这时候我们直接访问云主机公网 ip 地址,就能直接看到该默认页面:
注意!如果这时无法通过公网 ip 访问页面,请确保云主机所处的安全组是允许所有端口访问的。
四. 执行一个 node 服务,并通过 nginx 配置实现反向代理

这里我们简单实现一个 node 页面,监听 3000 端口。

我们在本地先写一个 index.js 文件来耍一耍:

const http = require( http 
const server = http.createserver((req, res) =  {
 res.statuscode = 200;
res.setheader( content-type ,  text/plain 
res.end( hello world\n 
server.listen(3000, () =  { console.log(`node server is now running/`);
});

执行 node index 的话,访问 http://localhost:3000/ 会有“hello world”的输出:

然后咱们把这个文件放到云主机去。

鉴于我已经挂到 github 上,读者们可以直接通过如下指令来下载该文件:

#git clone https://github.com/vajoy/node-test.git

p.s. 我个人下载到了“/root/node-project/”文件夹下,要执行 node 的话指令为:

#node /root/node-project/node-test/cp1/index

接着先修改 nginx 配置。如果你忘了 nginx 的配置在哪里,可以执行这条指令来确定:

#/home/ubuntu/nginx/sbin/nginx -t

本文的 nginx 是安装在 /home/ubuntu 下的,所以其配置文件路径是“/home/ubuntu/nginx/conf/nginx.conf”,我们这样编辑它(加上红框部分的代码):
这意味着当有请求路径为“/hello”时,nginx 会将请求代理到服务器的 3000 端口去(即 node 监听的端口)。

五. 重启 nginx 和 node

到这一步的时候别忘了两点

1.  咱们修改 nginx 配置后还没重启 nginx 服务;

2. 咱们还没有在云主机上跑 node 服务(上文仅仅是在本地电脑上跑了一次)。

所以我们分别执行如下指令(重启 nginx+ 跑 node):

#/home/ubuntu/nginx/sbin/nginx -s reload
#node /root/node-project/node-test/cp1/index

这时候直接访问 http:// 公网 ip/hello,就能直接看到 node 跑起来的页面内容了:

以上就是“ubuntu 下怎么安装 nodejs 并实现反向代理服务器”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,丸趣 TV 小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-14发表,共计3291字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)