2.5 KiB
2.5 KiB
快速修复:HTTPS访问后端接口问题
问题
访问 https://jarvis.van333.cn 时,前端请求仍然是 http://134.175.126.60:30313/captchaImage
立即执行以下步骤
步骤1:创建环境变量文件
在项目根目录 d:\code\ruoyi-vue\ 下,创建两个文件:
文件1:.env.development
内容:
VUE_APP_BASE_API=/dev-api
文件2:.env.production
内容:
VUE_APP_BASE_API=/dev-api
创建方法(Windows):
- 在项目根目录打开命令行
- 执行:
echo VUE_APP_BASE_API=/dev-api > .env.development echo VUE_APP_BASE_API=/dev-api > .env.production
或者手动创建:
- 在项目根目录新建文件
.env.development - 在项目根目录新建文件
.env.production - 两个文件内容都是:
VUE_APP_BASE_API=/dev-api
步骤2:删除旧的打包文件(如果存在)
cd d:\code\ruoyi-vue
rmdir /s /q dist
步骤3:重新打包
npm run build:prod
步骤4:部署到服务器
将 dist 目录中的所有文件复制到服务器的 /www/sites/jarvis.van333.cn/index/ 目录
步骤5:确认Nginx配置
确保nginx配置文件中包含:
location /dev-api/ {
proxy_pass http://127.0.0.1:30313/;
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;
}
步骤6:重启Nginx
sudo nginx -t
sudo nginx -s reload
步骤7:清除浏览器缓存并测试
- 按
Ctrl + Shift + Delete清除浏览器缓存 - 或者按
Ctrl + F5强制刷新 - 打开开发者工具(F12)查看Network请求
- 确认请求URL是
https://jarvis.van333.cn/dev-api/captchaImage
验证配置是否正确
打包完成后,检查打包后的文件:
cd d:\code\ruoyi-vue\dist\static\js
findstr /s /i "134.175.126.60" *.js
如果找到包含该IP的文件,说明环境变量未生效,需要:
- 确认
.env.production文件存在且内容正确 - 删除
dist目录后重新打包 - 确认打包命令是
npm run build:prod(不是npm run build)
如果还是不行
检查 vue.config.js 第15行,应该是:
const baseUrl = process.env.VUE_APP_BASE_API || (process.env.NODE_ENV === 'production' ? '/dev-api' : 'http://127.0.0.1:30313')
如果不对,说明配置未更新,需要重新保存 vue.config.js 文件。