将前端和后端项目部署到阿里云服务器并使用宝塔面板进行管理,是一种非常常见且高效的方式。以下是详细的步骤指南:
✅ 一、准备工作
1. 购买阿里云服务器(ECS)
- 登录 阿里云官网
- 购买一台 ECS 实例(建议选择 CentOS 7.x / Ubuntu 20.04+ 系统)
- 配置安全组规则:开放以下端口
80(HTTP)443(HTTPS)22(SSH)8888(宝塔默认面板端口)- 其他自定义端口(如 Node.js 后端用的
3000,5000等)
⚠️ 注意:生产环境建议修改宝塔默认端口并设置强密码。
✅ 二、安装宝塔面板
1. 连接服务器(使用 SSH)
ssh root@你的服务器公网IP
2. 安装宝塔面板(以 CentOS 为例)
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装完成后会输出面板地址、用户名和密码,务必保存好!
例如:
Bt-Panel: http://xxx.xxx.xxx.xxx:8888
username: xxxxxxxx
password: xxxxxxxx
✅ 三、登录宝塔面板
在浏览器中访问上面的地址,登录宝塔。
首次登录会提示安装环境套件,推荐选择:
- LNMP 或 LAMP(根据你后端语言选)
- 如果是 Node.js 后端 → 选“不安装”,后面手动配置
- 如果是 PHP/Python/Java → 可选对应环境
推荐:先不安装,后续按需安装更灵活。
✅ 四、部署后端项目(以 Node.js 为例)
1. 安装必要软件
在宝塔软件商店中安装:
- Node.js 管理器(可选版本,如 16/18)
- PM2 管理器
- Nginx
2. 上传后端代码
方式一:通过宝塔文件管理上传压缩包
方式二:使用 Git 拉取代码(推荐)
cd /www/wwwroot/api.yourdomain.com
git clone https://gitee.com/your/repo.git .
3. 安装依赖 & 启动项目
进入项目目录:
npm install
npm run build # 如果需要构建
使用 PM2 启动:
- 在宝塔中打开「PM2 管理器」
- 添加项目:
- 名称:my-api
- 脚本名称:
app.js或server.js - 目录:
/www/wwwroot/api.yourdomain.com - 端口:比如
3000
项目将在后台持续运行。
✅ 五、部署前端项目(Vue/React)
1. 打包前端项目
本地执行:
npm run build
生成 dist 文件夹。
2. 上传到服务器
- 在宝塔创建网站:
www.yourdomain.com - 根目录:
/www/wwwroot/www.yourdomain.com - 将
dist内容上传至此目录
3. 配置 Nginx(静态资源)
宝塔会自动创建 Nginx 配置,确保支持 HTML5 History 模式(适用于 Vue Router / React Router):
修改站点配置,添加:
location / {
try_files $uri $uri/ /index.html;
}
✅ 六、域名与 SSL 配置
1. 域名解析
在阿里云 DNS 控制台,将域名 A 记录指向服务器公网 IP。
2. 在宝塔中绑定域名
- 编辑网站 → 域名 → 添加
www.yourdomain.com - 可同时添加
yourdomain.com
3. 申请免费 SSL 证书
- 宝塔 → 网站 → SSL → Let’s Encrypt 免费证书
- 勾选域名,申请并启用 HTTPS
✅ 七、前后端联调配置
1. 反向(解决跨域)
如果你的前端通过 http://www.yourdomain.com 访问,而后端是 http://api.yourdomain.com:3000,建议用 Nginx 反向避免 CORS。
示例:前端请求 /api/* 到后端
修改前端网站的 Nginx 配置:
location /api/ {
proxy_pass http://127.0.0.1:3000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
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_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
这样前端可以请求 /api/users,实际转发到后端 3000 端口。
✅ 八、其他注意事项
| 项目 | 建议 |
|---|---|
| 数据库 | 使用宝塔安装 MySQL/MongoDB,或使用阿里云 RDS |
| 备份 | 设置定期备份网站文件和数据库 |
| 安全 | 关闭 ping、屏蔽恶意 IP、定期更新系统 |
| 监控 | 使用宝塔监控插件查看 CPU、内存、磁盘 |
✅ 总结流程图
阿里云 ECS + 宝塔面板
↓
安装 Nginx、Node.js、PM2
↓
上传前端 dist 文件 → 配置网站
↓
上传后端代码 → PM2 启动(监听 3000)
↓
Nginx 反向 /api → 3000
↓
绑定域名 + SSL 证书 → 上线
如果你提供具体的技术栈(如:Vue + Express / React + Spring Boot),我可以给出更精确的配置示例。
是否需要我为你生成一份完整的 Nginx 配置模板?
云计算