在打包 Web 端和移动端之前,需要在项目根目录创建 .env.production 文件来配置生产环境变量。
在 art-design-pro 目录下创建 .env.production 文件:
cd art-design-pro
touch .env.production
# ============================================
# Web 前端生产环境配置
# ============================================
# API 地址(必需)
# 如果使用 Nginx 代理,建议使用相对路径 /api(推荐)
# 这样 Nginx 会自动将 /api 请求代理到后端 http://127.0.0.1:8000
VITE_API_URL=/api
# 如果需要直接访问后端(不推荐,会有跨域问题),使用完整 URL:
# VITE_API_URL=http://121.43.228.102:8000
# 应用版本号(可选)
VITE_VERSION=1.0.0
VITE_API_URL(必需):
/api - 使用相对路径,由 Nginx 代理到后端VITE_VERSION(可选): 应用版本号,用于显示在界面或日志中
cd art-design-pro
npm install
npm run build
打包后的文件在 art-design-pro/dist/ 目录。
在 mobile-h5 目录下创建 .env.production 文件:
cd mobile-h5
touch .env.production
# ============================================
# H5 移动端生产环境配置
# ============================================
# API 地址(必需)
# 如果使用 Nginx 代理,建议使用相对路径 /api(推荐)
# 这样 Nginx 会自动将 /api 请求代理到后端 http://127.0.0.1:8000
VITE_API_URL=/api
# 如果需要直接访问后端(不推荐,会有跨域问题),使用完整 URL:
# VITE_API_URL=http://121.43.228.102:8000
/api - 使用相对路径,由 Nginx 代理到后端注意: VITE_API_BASE_URL 仅用于开发环境的 Vite 代理配置,打包时不需要。
cd mobile-h5
npm install
npm run build
打包后的文件在 mobile-h5/dist/ 目录。
/api?Web 端 .env.production:
VITE_API_URL=/api
VITE_VERSION=1.0.0
移动端 .env.production:
VITE_API_URL=/api
Nginx 会自动将 /api 请求代理到后端:
location /api {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
如果由于特殊原因需要使用完整 URL(不推荐),需要:
配置后端 CORS:
# backend/.env
CORS_ORIGINS=http://121.43.228.102,https://your-domain.com
前端配置: ```bash
VITE_API_URL=http://121.43.228.102:8000
VITE_API_URL=http://121.43.228.102:8000 ```
防火墙: 确保后端 8000 端口对外开放(不推荐)
在代码中打印环境变量(仅开发环境可见):
// 开发环境运行时会显示
console.log('API URL:', import.meta.env.VITE_API_URL)
打包后,环境变量会被编译到代码中。可以通过以下方式验证:
A: 检查 .env.production 文件是否存在,以及 VITE_API_URL 是否正确配置。
/api 后,请求 404?A: 检查 Nginx 配置是否正确,确保 /api 路径被正确代理到后端。
A:
/api,不应该有跨域问题(同源)A:
.env.development 或 .env.env.production.env.testVite 会根据 mode 自动加载对应的环境文件。
# 1. 进入项目目录
cd art-design-pro
# 2. 创建生产环境配置
cat > .env.production << EOF
VITE_API_URL=/api
VITE_VERSION=1.0.0
EOF
# 3. 安装依赖(如果还没安装)
npm install
# 4. 打包
npm run build
# 5. 上传到服务器
scp -r dist/* user@121.43.228.102:/iflytek/dibang/web/
# 1. 进入项目目录
cd mobile-h5
# 2. 创建生产环境配置
cat > .env.production << EOF
VITE_API_URL=/api
EOF
# 3. 安装依赖(如果还没安装)
npm install
# 4. 打包
npm run build
# 5. 上传到服务器
scp -r dist/* user@121.43.228.102:/iflytek/dibang/app/
VITE_API_URL/api(使用 Nginx 代理).env.production