对于没有一点服务器使用经验的小白用户来说,宝塔面板是一个不错的选择。
安装宝塔面板
我使用的是linux centos7(宝塔7系支持好)。
官方提供了yum安装方式
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
一路按y,会安装宝塔的各种服务,py等环境。
安装成功
进入宝塔面板软件商店,安装pm2管理器,mongodb,nginx
安装完成以后,点击文件,上传网站压缩文件,zip
解压文件,并且进入目录,
// 进入网站所在目录(宝塔默认网站根目录/www/wwwroot)cd /www/wwwroot// 安装依赖npm install// 初始化数据npm run build
在上一章讲了,默认初始化的数据,需要自己创建默认的数据,索引等。
进入pm2管理器,选择网站
这里其实相当于进入项目目录,执行(↑上面的操作相当于执行了这条命令)
pm2 start app.js --name app
到这里一步只是启动了项目,但是没有映射(也就是设置转发请求),因为最前面有nginx接受了所有的请求,选择映射就是让nginx吧某个网站请求转给pm2管理器开启的服务
映射完成之后就可以再网站一栏找到刚才映射的网站。
配置当前站点nginx文件
加入转发请求以及http强制跳转https
// http强制跳转httpsif ($server_port !~ 443){ rewrite ^(/.*)$ https://$host$1 permanent;}// 分发请求给nodejs,并且配置header头代理字段和当前协议// proxy_set_header X-Proxy-Protocol "https"告诉nodejs当前代理协议是哪种,(自定义header字段)location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_set_header X-Proxy-Protocol "https"; # 要代理的本地后台 我的是8080端口 proxy_pass http://127.0.0.1:9999;}
如果发现站点下有代理配置,请注释掉,以免出错!!!
部署完成效果
演示地址:https://www.youletv.com