菜菜菜的园子 发表于 2024-6-11 21:26:15

Nginx代理接口访问返回404的实现示例

因为不同业务系统间有接口调用,存在跨域问题,为了解决同源策略,需要将接口通过nginx去转发,但是配置完后通过postman请求一直存在访问404的问题。
访问地址:https://a.test.com/nsyapi/oauth/loginOther
被代理接口地址:https://b.prod.com/api/oauth/loginOther

一、Nginx配置后的现象


postman请求接口出现404报错

二、原因

由于proxy_pass请求头出现问题导致返回404。可以在配置中添加一些相关的请求头来解决这个问题。例如

在这个配置中,我们添加了三个新的请求头Host、X-Real-IP和X-Forwarded-For,这可以帮助我们正确地将请求传递到目标服务器,并确保我们收到正确的响应。

三、 解决办法

去掉 proxy_redirect off;
增加 proxy_set_header Host $proxy_host;

postman请求接口正常

命令行验证接口请求成功
到此这篇关于Nginx代理接口访问返回404的实现示例的文章就介绍到这了,更多相关Nginx代理接口访问返回404内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

来源:https://www.jb51.net/server/322214sov.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: Nginx代理接口访问返回404的实现示例