前端项目部署到阿里云 持续运行(2)

之前写的前端项目部署到阿里云,有一个缺陷就是系统会自动清理进程,这时候需要自己重启服务。

基础使用

后来了解到,有一个管理进程的npm库: pm2,能够保持进程不被杀死

  1. 进入服务器
    cmd -> ssh root@yourIp
  2. 下载pm2(全局)
    npm install pm2 -g
  3. 使用
    pm2 start 'location of serve.js'
    如果serve是全局安装的,命令为pm2 start '/usr/local/lib/node_modules/serve/bin/serve.js'

但是这样会有个局限:
只能启用一个端口,若要显示不同的网页,只能用域名:端口/目录的方式访问,不能做到只用域名:端口就可以访问

改进

自己写一个serve.js,放到了博客目录下
比如,我的博客大目录是/root/hexo_blog/root/hexo_blog/public 这是生成好的文章目录,所以真正要启动的是第二个,要是单独serve . 也是需要进入到此目录下的,否则只能通过/目录方式访问
所以

  • /root/hexo_blog下新建serve.js
  • 输入命令pm2 start '/root/hexo_blog/serve.js'
// serve.js
const handler = require('serve-handler');
const http = require('http');

const server = http.createServer((request, response) => {
  // You pass two more arguments for config and middleware
  // More details here: https://github.com/zeit/serve-handler#options
  return handler(request, response, {
		public: './public' // 需要启动哪个目录作为根并对外开发
	});
})

server.listen(80, () => {
  console.log('Running at http://localhost:80');
});

参考链接:https://github.com/Unitech/pm2

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值