nginx 代理接口报404 问题排查

今天遇到一个nginx代理后端接口请求报404的问题,问题是这样的,后端由于服务器没有环境,但是需要和前端联调,于是采用cpolar内网穿透的方式,穿出来了。但是前端请求跨域,于是前端用nginx代理了一下后端接口,但是报404.

由于线上nginx 配置比较复杂,我就简化写下当时的nginx配置

复制代码
server {
    listen       80;
    server_name test.xxxxx.cn
    
    location /api {
       include proxy.conf;
       proxy_pass http://127.0.0.1:8888;
    }
}

前端调用www.xxxxx.cn/api的时候一直报404,根据nginx访问日志查,看到access.log 是有记录,而且返回404。

红圈部分,已确定应将请求路由到哪个服务器,如果它的值不匹配任何服务器名称,或者请求根本不包含这个头字段,那么 nginx 将把请求路由到这个端口的默认服务器

那解决方案就是配置Host

复制代码
server {
    listen       80;
    server_name www.xxxxx.cn
    
    location /api {
        include proxy.conf;
        proxy_set_header Host 127.0.0.1;
        proxy_pass http://127.0.0.1:8888;
    }
}

问题解决

相关推荐
上海云盾第一敬业销售5 小时前
服务器遭受攻击的应对策略及快速防护实践
运维·服务器·web安全·ddos
剑神一笑10 小时前
Linux pgrep 命令详解:按名称查找进程 PID 的高效方法
linux·运维·chrome
Lumbrologist10 小时前
【零基础部署】Docker 部署 CrewAI 多 Agent 编排框架保姆级教程
运维·docker·容器
yyuuuzz10 小时前
独立站的技术基础与常见运维问题
大数据·运维·服务器·网络·数据库·aws
剑神一笑10 小时前
Linux killall 命令详解:按进程名批量终止进程的原理与实践
linux·运维·chrome
雅菲奥朗10 小时前
企业级 AI 自动化|OpenClaw 龙虾实战与认证
运维·人工智能·自动化·openclaw
江华森12 小时前
Ansible 自动化运维:从入门到实战
运维·自动化·ansible
宋浮檀s14 小时前
应急响应——Web漏洞:命令执行+SSRF+弱口令
运维·数据库·sql·网络安全·oracle·应急响应
日取其半万世不竭14 小时前
iftop、nethogs 和 nload:Linux 服务器网络流量实时监控工具介绍
linux·运维·服务器
mounter62515 小时前
Linux 内核资源管理:控制组(cgroup)的演进与“策略组”新提案
linux·运维·服务器·cgroup·kernel