centos安装node,使用pm2管理koa

1、安装node.js

可以打开网站https://github.com/nodesource/distributions,查看最新版本。

curl --silent --location https://rpm.nodesource.com/setup_13.x | sudo bash -

yum -y install nodejs

node -v查看安装是否完成。

用淘宝源快一些:

淘宝镜像:https://npm.taobao.org/mirrors/

cd /usr/local/src/
wget https://npm.taobao.org/mirrors/node/latest-v14.x/node-v14.3.0.tar.gz
tar zxvf node-v14.3.0.tar.gz
ln -s /usr/local/src/node-v14.3.0/bin/npm /usr/local/bin/
ln -s /usr/local/src/node-v14.3.0/bin/node /usr/local/bin/

2、nginx的ssl443代理到koa端口3000中。

       location / {
    #        root   html;
    #        index  index.html index.htm;
             proxy_pass http://127.0.0.1:3000;
        }

下一步安装pm2,来保持node一直处于服务中

安装

npm install -g pm2

配置pm2自启动

pm2 startup centos

切换目录到项目目录下

 cd /usr/local/nginx/html/******

运行网站

pm2 start index.js

查看目前状态

pm2 list

其他pm2命令:

pm2 stop/reload/restart/delete all       #停止/重载/重启/删除 所有进程
pm2 stop/reload/restart/delete 0         #停止/重载/重启/删除 pm2进程列表中进程为0的进程
pm2 logs [--raw]                         #显示所有进程的日志
pm2 flush                                #清空所有日志文件
pm2 reloadLogs                           #重载所有日志

这样网站就可以正常运行了。但是如果使用了websocket的话。可能报错,是因为websocket的Upgrade字段仅限HTTP/1.1版本协议,不适合HTTP/2.0版本协议。报错的可能是vue-socketio.js:10 WebSocket connection to 'wss://www.网址.com/socket.io/?EIO=3&transport=websocket&sid=W3T3BzXDcrrOH3l7AAAC' failed: Error during WebSocket handshake: Unexpected response code: 400

所以在nignx的433转发中,应该添加上HTTP/1.1,然后告诉升级websocket协议即可。

https://www.nginx.com/blog/websocket-nginx

https://github.com/socketio/socket.io/issues/1942

location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}

pm2启动后,想查看node当中的错误或者cmd输出的话可以使用

pm2 log <taskname>

任务可以通过list来查看

 

pm2 想查看node的错误输出,在centos中输入:pm2 monit appname 即可。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值