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;
    }
}

问题解决

相关推荐
野熊佩骑6 分钟前
一文读懂Nginx 之 Ubuntu使用apt方式安装Nginx官方最新版本
linux·运维·服务器·nginx·ubuntu·http
顶点多余27 分钟前
多路转接--select /poll
运维·服务器
老毛肚37 分钟前
微服务网关整合授权中心实现单点登录
运维·微服务·架构
小梦爱安全41 分钟前
配置RIP动态路由协议
运维·网络
墨着染霜华1 小时前
Windows 启动 Nginx 一闪而过、pid 丢失、logs 目录报错彻底解决
运维·windows·nginx
雪度娃娃1 小时前
Asio——socket的创建和连接
linux·运维·服务器·c++·网络协议
剑神一笑1 小时前
Linux tar 归档命令深度解析:从文件打包到压缩算法的完整实现
linux·运维·服务器
J2虾虾1 小时前
Linux tar 命令详解
linux·运维·服务器
阳光九叶草LXGZXJ1 小时前
达梦数据库-学习-52-DmDrs参数介绍(Manager模块)
linux·运维·数据库·sql·学习
corpse20101 小时前
CentOS Linux release 8.5.2111下的CVE-2026-31431 Linux内核提权漏洞处置 过程问题记录
linux·运维·centos