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

问题解决

相关推荐
ruxshui11 分钟前
# Linux diff命令使用
linux·运维·服务器
Sheffield12 分钟前
为什么大家都用iptables,不愿碰原生firewalld?
linux·运维·安全
何中应19 分钟前
Jenkins构建完,jar包启动不起来?
linux·运维·jenkins
柏木乃一20 分钟前
Linux进程信号(1):信号概述,信号产生part 1
linux·运维·服务器·c++·信号·signal
追夢秋陽27 分钟前
MacOS 通过Shell 脚本一步到位配置nginx+Php环境
nginx·macos·php·一站式配置
暴力求解28 分钟前
Linux---进程(一):初识进程
linux·运维·服务器
香蕉你个不拿拿^42 分钟前
Linux中make和makefile基本使用
linux·运维·服务器
袁袁袁袁满1 小时前
Linux怎么创建Shell脚本.sh文件
linux·运维·服务器·shell·shell脚本.sh文件·创建shell脚本·创建.sh文件
天空属于哈夫克31 小时前
企微API自动化:高效安全的群运营方案
linux·运维·服务器
dust_and_stars1 小时前
Windows 11 RDP Wrapper 配置教程与常见问题解决方法
运维·windows