1. 说明
- 项目使用前后端分离部署
- 后端接口只开放 http 访问接口(不允许 https 访问)
- 前端使用域名访问(https 协议)
- 项目使用宝塔部署在linux 服务器上
2. 导致问题
前端调用后端接口报错(跨域),https 下的网址内无法访问http协议
3. 解决
在宝塔面板界面->网站->设置->配置文件 新增代理,把 https 协议转成 http 协议
location /api {
proxy_pass http://localhost:8088;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
https://域名/api/query 接口地址 会被自动切换到
http://localhost:8088/webapi/query
关键点在 /api
具体原理还不清楚,不管了,先记下来再说