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

问题解决

相关推荐
会编程的土豆2 分钟前
Docker 里面的镜像(Image)和容器(Container)到底是什么
运维·docker·容器
s_w.h3 分钟前
【 linux 】进程的调度算法
linux·运维·服务器
r-t-H4 分钟前
KVM虚拟化与Docker基础实践-第三章
linux·运维·nginx·docker·容器
艾莉丝努力练剑6 分钟前
【Linux网络】Linux 网络编程:传输层UDP
linux·运维·服务器·网络·计算机网络·udp
陈eaten7 分钟前
centos 7等保整改学习
linux·运维·服务器·网络安全·centos·等保
牢七8 分钟前
契约锁分析
linux·运维·服务器
无忧.芙桃17 分钟前
进程间通信的基本概念(上)
linux·运维·服务器
运维瓦工20 分钟前
DevOps 生态介绍(四):Sonarqube&jacoco 与jenkins集成使用
运维·jenkins·devops
草莓熊Lotso2 小时前
【Linux系统加餐】从原理到封装:基于建造者模式实现System V信号量工业级C++封装
android·linux·运维·服务器·网络·c++·建造者模式
广州灵眸科技有限公司8 小时前
瑞芯微(EASY EAI)RV1126B 核心板供电电路
linux·运维·服务器·单片机·嵌入式硬件·电脑