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

问题解决

相关推荐
日取其半万世不竭4 小时前
用 Portainer 可视化管理 Docker:容器再多也不用背命令了
运维·docker·容器
动恰客流统计7 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径
java·大数据·运维·人工智能
砍材农夫11 小时前
运维|devops|jenkins构建应用发布
运维·jenkins·devops
△曉風殘月〆12 小时前
如何在Linux中安装Qt开发环境
linux·运维·qt
雨的旋律209914 小时前
ubuntu2604
linux·运维·服务器
Eloudy14 小时前
ubuntu 22.04安装 cuda 12.8.2
linux·运维·ubuntu
三言老师14 小时前
mkdir创建多级目录,目录创建基础实操
linux·运维·服务器
独孤--蝴蝶15 小时前
Docker容器进阶(一)
运维·docker·容器
he391237715 小时前
ogg命令
运维·网络
其实防守也摸鱼15 小时前
Kimi K3深度测评:长文本之外的真实力
运维·开发语言·网络·人工智能·python·学习·安全