今天将后端的接口迁至K8S集群中,开发说接口报404,于是我去看了一下前端的配置发现一些问题
前端使用一个location匹配API接口,并转发到一个IP,这是原配置
开发将后端的新的域名直接写在了原配置中,替换后端的IP
location /stage-api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://api.xxx.com/;
}
此时NGINX向代端请求时,等同于直接请求IP,无法达到请求我们预定的域名
因此我们需要在head头中传一个host
proxy_set_header Host api.xxx.com;