一、安装node服务
//安装wget
yum install -y wget
//下载node
wget https://nodejs.org/dist/v12.16.2/node-v12.16.2-linux-x64.tar.xz
下载完成后执行安装命令:
xz -d node-v12.16.2-linux-x64.tar.xz
tar -xvf node-v12.16.2-linux-x64.tar
执行软链接,全局使用
ln -s ~/node-v12.16.2-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v12.16.2-linux-x64/bin/npm /usr/bin/npm
检测node是否安装成功
node -v
npm -v
二、服务器新建数据库与存放node服务文件夹
导入数据库并上传node代码到服务器;
服务器添加安全组 3000端口入口
//注 : 3000为node默认端口,修改后对应修改; 记得修改数据链接信息;node后台服务并没打包的说法
三、启动node服务
这里以 ‘www/node/project’目录为实例;目录为node源码上传到服务器的目录
终端输入命令:
cd /www
cd node
cd project
//执行启动代码
npm start
这样就可以通过你的服务器IP:3000访问项目了。
但是这样启动的话,每次关闭终端服务将失效;
四、使用pm2启动node服务
全局安装pm2
npm install -g pm2
网上很多说法是执行如下命令启动的,笔者在这里踩了很久的坑;
pm2 start app.js
是的,这样执行 pm2 list 看到服务是真的启动了, online状态,但返回浏览器打开发现并不能访问(IP:3000)
执行端口状态命令发现并没有3000的服务
//端口列表命令
netstat -tpln
最后笔者是用如下命令解决的:
pm2 start ./bin/www
最后执行端口命令发现3000端口有了,关闭终端浏览器也可以访问打开;
更多的pm2命令可以百度搜索研究使用哦;
五、使用nginx反向代理使用域名访问
现在我们的服务是通过IP:3000去访问的,如果需要域名访问服务的话,就需要如下操作,比如说我想通过二级域名访问: node.liumingchi.com
1.域名添加二级域名解析到服务器公网,简称域名解析;
2.安装nginx,这里就不说了,一般配置过服务器都有这个,或者自行百度安装;
3.找到nginx的配置文件.conf,在server下添加:
server {
listen 80;
server_name node.liumingchi.com;
location / {
proxy_pass http://localhost:3000;
}
}
然后重启nginx即可。