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 小时前
RHCE--基于Nginx的Web服务器配置
运维·服务器·nginx
打工的小王5 小时前
docker(三)具体项目的部署
运维·docker·容器
一叶星殇7 小时前
.NET WebAPI:用 Nginx 还是 IIS 更好
运维·nginx·.net
LEEE@FPGA9 小时前
zynq 是不是有了设备树,再linux中不需要编写驱动也能控制
linux·运维·单片机
Trank-Lw9 小时前
Docker Devcontainer 管理命令
运维·docker·容器
RisunJan9 小时前
Linux命令-less(分页查看器)
linux·运维
赛希咨询9 小时前
人工智能自动化如何提高研究生产力
运维·人工智能·自动化
梁正雄9 小时前
linux服务-MariaDB 10.6 Galera Cluster+garbd
linux·运维·mariadb
heartbeat..9 小时前
Redis 哨兵模式:原理、配置与故障排查全解析
java·运维·数据库·redis
乐迪信息10 小时前
乐迪信息:AI算法盒子+船舶AI逆行检测算法,船舶违规实时抓拍
大数据·运维·人工智能·物联网·安全