宝塔下go项目搭建

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、配置项目

    在这里插入图片描述

发表评论

电子邮件地址不会被公开。 必填项已用*标注