https://blog.csdn.net/kuangshp128/article/details/133490886
一、在centos服务器上安装宝塔
1、宝塔官方地址
2、在官网上选择在centos上安装的方式
yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
1
3、复制地址打开宝塔面板
在这里插入图片描述
4、登录进去修改登录账号和密码
二、安装软件及环境配置
1、在宝塔面板的软件商城上安装mysql8、redis、nginx软件
2、创建数据库并且可以远程访问,方便同步数据到上面,后期可以关闭远程访问功能
3、服务器上安装go,参考地址
4、服务器上安装ffmpeg,参考文档
三、测试go代码是否正常
1、安装依赖包
go mod tidy
1
2、运行代码
go run main.go
1
3、上面正常的话,执行打包操作
go build main.go
1
四、宝塔上启动go程序
1、创建部署项目
在这里插入图片描述
2、启动go程序
在这里插入图片描述
3、查询端口是否启动,或者直接查看端口netstat -tulnp | grep 9000
在这里插入图片描述
五、在nginx中配置前端项目和后端反向代理
1、查看nginx的配置文件所在位置
在这里插入图片描述
2、点击项目配置nginx代理
在这里插入图片描述
3、配置文件如下
server {
listen 80;
server_name localhost;
# index index.html index.htm default.htm default.html;
# root /www/wwwroot/server;
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md|package.json|package-lock.json|\.env) {
return 404;
}
#禁止在证书验证目录放入敏感文件
if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
return 403;
}
# h5文件目录
location / {
#root /usr/share/nginx/html;
root /home/h5/dist;
index index.html index.htm;
}
location @router {
rewrite ^.*$ /index.html last; # 关键一句
}
# cms前端项目
location /cms{
alias /home/admin-web/dist;
index index.html index.htm;
try_files $uri $uri/ @router;
}
# m3u8跨域处理
location /uploads/video {
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /home/gin-video-api/public;
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
}
# 后端代码代理
location ^~ /api/v1 {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:9000;
}
# HTTP反向代理相关配置结束
access_log /www/wwwlogs/gin_video_api.log;
error_log /www/wwwlogs/gin_video_api.error.log;
}
5、查看目录下是否添加一个nginx的配置文件/www/server/panel/vhost/nginx目录下会多一个文件
6、在进入项目的位置创建几个文件夹
mkdir -p public/upload/video
mkdir logs
1
2
7、将前端的代码放到对应的目录下,使用postman自测接口
六、配置node项目
1、服务器上拉取代码
2、配置项目
在这里插入图片描述