过程描述:前端在测试环境部署了node.js,为了满足node.js的跨域名请求,把所有请求前缀加上了/api,并通过nginx反向代理路由到我们项目的地址。由于需要部署多个不同端口的应用,所以反向代理需要满足不同的请求路径,代理到不同端口的应用上。
于是,配置了两个upstream:
然后配置了一个server:
发现第二个代理的地址请求不到,报404,网上查了半天资料也不知道怎么解决。。。后来仔细看了location后面路径加/跟不加/的区别才知道,加了/api/simulate/会把路径中的这段地址给代理走,既原来uri中的/api/simulate/,本来只需把/api/代理走,没想到把simulate也代理走了。。。也就难怪请求不到路径了。