阿里云服务器部署Node.js项目详解

以aliyun为例,选购服务器建议选择CentOS,配置按照自己的需求选择,付款成功后进入控制台页面,重置root密码即可远程登录服务器。可在控制台点击远程登录,也可在安装了ssh的主机上登录ssh root@150.77.1.85

环境安装

安装Node.js:

curl -sL https://rpm.nodesource.com/setup_12.x | bash -
yum install -y nodejs

若要编译C++插件,需先安装编译工具:

yum install gcc-C++make
yum groupinstall 'Development Tools'

检查Node.js和npm版本:

node -v
npm -v

设置淘宝npm镜像

为了加快npm包的下载速度,我们可以设置淘宝npm镜像:

npm config set registry "https://registry.npm.taobao.org"

安装pm2

全局安装pm2,用于管理Node.js应用程序:

npm install pm2 -g

安装Nginx

Nginx是一个高性能的HTTP和反向代理服务器,常用于部署Node.js项目:

确认已安装依赖库:

yum -y install gcc pcre-devel zlib-devel openssl-devel

下载最新版Nginx并编译安装:

cd /usr/local/nginx
mkdir nginx
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
cd nginx-1.16.1
./configure
make install

配置Nginx

编辑Nginx配置文件:

vi /usr/local/nginx/conf/nginx.conf

在配置文件中添加以下内容:

include /usr/local/nginx/enabled-server/*;

创建新的服务器块myblog.conf,配置反向代理到Node.js应用:

upstream nodepro {
  server 127.0.0.1:3000;
  keepalive 64;
}
server {
  listen 80;
  server_name example.com www.example.com;
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Nginx-Proxy true;
    proxy_set_header Connection "";
    proxy_pass http://nodepro;
  }
}

检查配置文件的正确性:

cd /usr/local/nginx
-t

启动Nginx并部署Node.js应用

启动Nginx:

nginx

使用pm2启动和管理Node.js应用:

pm2 start app.js --name "myapp"
pm2 save
pm2 startup
pm2 resurrect

至此,你已经在阿里云服务器上成功部署了一个Node.js应用,并通过Nginx实现了反向代理。记得定期更新和备份你的系统和应用,以确保安全性和可靠性。

pdf 文件大小:61.5KB