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

问题解决

相关推荐
麻瓜呀11 分钟前
vue2 Element-ui框架相关常见问题-表单组件重置显示异常
运维·服务器·ui
wanhengidc14 分钟前
算力服务器的作用都有哪些?
运维·服务器·深度学习
TG_yunshuguoji26 分钟前
亚马逊云代理商:如何监控AWS RDS使用率并设置报警?
运维·云计算·aws
benjiangliu36 分钟前
LINUX系统-12-进程控制(三)-自定义shell
linux·运维·服务器
lzhailb39 分钟前
nginx
运维·nginx
The Open Group1 小时前
开放流程自动化™标准:不是“更好的控制系统”,而是一次工业自动化协作方式的重构
运维·重构·自动化
The️1 小时前
Linux驱动开发之Open_Close函数
linux·运维·驱动开发·mcu·ubuntu
my_styles1 小时前
window系统安装/配置Nginx
服务器·前端·spring boot·nginx
wefg11 小时前
【Linux】信号的产生、保存、处理
linux·运维·服务器
Haoea!1 小时前
Docker + Harbor 私有镜像仓库搭建
运维·docker·容器