Vue3+Go 全栈项目上线阿里云|从 0 到 1 踩坑全纪录

前端 + 后端 + 数据库 + Nginx + 服务器部署一条龙实战新手也能跟着做完的真实全栈项目

前端效果:

server日志:

目录导航

一、项目概览

这是一个完整的前后端分离用户管理系统 ,代码由AI生成、无冗余框架、无黑盒依赖,是入门全栈的练手项目。

建议去阿里云申请服务器,有免费的试用期;

后端(Go + Gin)

  • 框架: Gin v1.12.0 + GORM v1.30.0 + MySQL
  • 认证: JWT(HS256,24h 有效期)+ Argon2id 密码哈希

前端(Vue 3)

  • 技术栈: Vue 3 + Vite 5 + Pinia + Vue Router + Axios + ECharts
  • 开发端口: 5173,代理 /api 到后端 8080
  • 5个页面: 登录、注册、首页(ECharts 数据看板)、个人信息、编辑信息
  • UI: 自定义 CSS,深色侧边栏 + 蓝色主题,中文界面

真正做到:前端能看、后端能跑、数据库能存、服务器能上!

二、项目架构设计

复制代码
用户 → 80 端口 Nginx 
      ├─ / → 前端页面(Vue dist) 
      └─ /api/* → 转发 Go 后端 8080 端口 Go 后端 → 操作 MySQL 

80 端口 = 网页

8080 端口 = API 接口

四、后端(Go)功能说明

整个后端**仅一个 main.go ** ,结构清晰、逻辑简单,非常适合新手学习。

API 接口列表

表格

方法 路径 功能 认证
POST /api/user/register 用户注册
POST /api/user/login 用户登录
GET /api/user/info 获取当前用户信息
PUT /api/user/update 更新用户信息
GET /api/user/stats 注册 / 登录趋势统计

数据库

库名:testdb表:

  • users 用户表
  • user_logins 登录记录表

附带 seed.sql 种子数据,可直接导入演示。

五、前端(Vue3)功能说明

  • 登录页面
  • 注册页面
  • 首页数据看板(ECharts)
  • 个人信息页面
  • 信息编辑页面

开发端口:5173

API 自动代理:/api → 后端 8080

六、项目文件结构

复制代码
go-api/
├── main.go          # Go 后端核心(522行)
├── go.mod
├── go.sum
├── seed.sql         # 数据库种子数据
├── go-api           # 编译文件
└── frontend/        # Vue 3 前端
    ├── src/
    │   ├── views/   # 5 个页面
    │   ├── stores/  # Pinia 状态
    │   └── router/  # 路由
    └── vite.config.js

七、阿里云服务器三大天坑

坑 1:安全组没开 80 / 8080 → 外网永远访问不了

阿里云默认关闭所有端口!必须手动开放:

  • 80
  • 8080

坑 2:Linux 防火墙拦截端口

放开网页、server的端口;

复制代码
ufw allow 80
ufw allow 8080
ufw reload

坑 3:低配服务器(1 核 1G)编译 Go 直接卡死

这个坑 99% 新手都会踩! 阿里云免费版本资源少,使用go run main.go编译会卡死。 应该先编译再运行!

复制代码
GOMEMLIMIT=512MiB go build -gcflags=all=-l -o server main.go

八、Nginx 最终正确配置(解决所有 405 / 500)

前端、server、mysql部署在同一台机器。

复制代码
server { 
    listen 80; 
    root /var/www/dist;
    index index.html; 
    
    location / { 
        try_files $uri $uri/ /index.html;
    } 
    
    location /api/ { 
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host; 
        proxy_set_header X-Real-IP $remote_addr; 
    }
}

九、最终效果

线上地址

http://121.199.59.229

功能全部正常:

  • 注册 ✅
  • 登录 ✅
  • 个人信息 ✅
  • 数据统计 ✅
  • 修改信息 ✅

十、收获与总结

半天时间,搭建demo熟悉了后端流程及使用的中间件:前端 → 后端 → 数据库 → Nginx → 阿里云部署 → 问题排查 → 上线成功

AI工具:豆包、Cipilot

希望这篇文章能帮助每一个正在入门全栈的你。

相关推荐
LDR0062 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术2 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园2 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob2 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享3 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.3 天前
C语言--day30
c语言·开发语言
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
何以解忧,唯有..3 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽3 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下3 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php