环境:腾讯云 centerOS 已安装宝塔面板
如何在服务器通过宝塔面板部署node项目?
宝塔网站管理页–“添加站点”
把 node 项目的文件打包上传到站点文件夹,node_modules 无需打包,需要重新安装依赖项
在站点目录下打开终端,安装 node 项目的依赖项大致用到以下命令:
npm init -y
npm install urlparser,koa,xxxxx -d
如果连接了数据库,需要再继续配置数据库在宝塔面板-安全里放行端口
修改 nginx 配置文件在站点修改-配置文件里找到
server_name www/root/XXX.COM 的下一行
添加代码
location / {
proxy_pass http://127.0.0.1:9993;
}9993
这是我node项目设置的端口,然后启动node服务
node app.js
再访问你创建的站点就OK了
使用 PM2 管理器 npm init 之后,在 package.json 里脚本加一句"start" :"node run start"
,在管理器界面 “添加项目”,选择 npm ,选择站点里的 node 的目录,“确认”
可以在 log 中看到 node 服务 online ,这样即使终端停止会话,也能继续跑 node 服务
宝塔nginx反代
原本是在 http://121.4.14.xxx:8765 端口进行服务,但是小程序要求 https
所以,因为原先有网站已经开启了 HTTPS 服务,故用 nginx 反向代理,客户端访问https://game.xxx.com/test 时,网络请求代理给 http://121.4.14.xxx:8765
操作步骤:
跑起 http 的 8765 端口的服务,在 server 文件夹下pm2 start app.js
只需修改https://game.xxx.com/文件里的 nginx 配置文件
vi /www/server/panel/vhost/nginx/game.xxx.com.conf
在前面加上一行
location /test {
proxy_pass http://121.4.14.xxx:8765;
}
重启 nginx 服务即可 sudo nginx -s reload