宝塔部署nodejs项目
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
前言
部署操作很简单网上也有很多教程不过我还是踩坑了这里记录一下给其他人也避避坑吧。
步骤
首先你已经有了服务器并且打开了宝塔面板其次准备好你的nodejs项目。
在宝塔安装pm2管理器推荐
打开pm2的设置选择nodejs项目对应的版本
在左侧菜单点击文件
在根目录点击www
其中 wwwroot
就是宝塔的默认建站目录
新建目录nodejs-demo
进入文件夹上传你的nodejs项目。注意此处本人踩了坑按照某文写的将node_modules压缩上传了。推荐忽略node_modules将其他文件上传然后打开宝塔内置终端安装依赖务必使用对应的包管理工具
我这里是pnpm。如果你使用了非npm工具记得在pm2的模块管理中下载对应工具。
安装完成后点击目录右侧的刷新即可看到node_modules
下一步则是放行端口如果不放行是无法访问的此处需要放行两处宝塔面板的安全菜单以及云服务器的防火墙我的项目端口用的3000那就放行3000
回到宝塔面板打开pm2管理器添加项目
添加项目成功后会显示对应端口并且状态是绿色播放图标没有显示端口号的话肯定是项目启动失败了建议重新走一遍流程。
此时就可以在浏览器输入 ip/域名:端口号
来访问node项目了
其他
这里具体讲一下我遇到的坑我按照某文将node_modules压缩打包在宝塔解压后一直走到pm2添加项目那一步然后端口号一直显示不出来删除项目>添加项目 来回了好几遍也没用后来换了其他文章说要在宝塔里安装依赖我就删了压缩上传的node_modules重新安装。但是这里我犯傻了我的项目用的pnpmpnpm-lock文件也一起上传了我却用npm在重新安装依赖结果自然还是不行。此时我还没发现前面的问题我去检查了pm2里的报错日志日志提示说express找不到。我就很纳闷明明node_modules里安装了它但是日志报错那肯定有问题我就宝塔上和vscode分别打开了线上和本地的依赖包一对比发现结构不同我这才感觉到了问题所在一看宝塔里面有npm和pnpm两个的lock文件。把node_modules删除再把npm的lock文件删除然后安装了pnpm用pnpm安装了依赖终于成功添加了node项目。这么说下来原来还是自己太粗心了笑哭希望其他人不要犯我这种傻。
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |