场景:在用Nginx做反向代理的时候,加入转发的地址后一直所有API都返回的状态码404,看upstream的时候健康检查没有问题。经过老大的解决后加了一行proxy_set_header Host $proxy_host就成功转发了,具体代码如下:
location ~ ^/api/([0-9]+)(\.[0-9]+)*/application/ {
proxy_pass http://xxx.xxx.xxx;
proxy_set_header Host $proxy_host;
}
百度后才知道,Nginx需要重写请求头,比如说我们需要访问/api/v1/application,通过nginx转发到/api/v1/application,如果没有重写的话,包的请求头仍是,也就出现了404的情况。$proxy_host表示的代理转发的地址。
参考资料:
/weixin_41585557/article/details/82426784