Nginx的location的prox pass不生效问题

配置nginx  location模块的prox pass不生效,访问一直404.

配置如下:

http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;

    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log main;

    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;

    include /etc/nginx/conf.d/*.conf;

    server {
        listen 18080 default_server;
        listen [::]:18080 ;
        server_name 10.37.3.28;
        root /usr/share/nginx/html;

       
        location /prod-api/{
            proxy_pass http://10.37.3.28:8080/;
        }
 }

然后docker启动nginx容器映射的端口命令是: -p 18080:80

我访问:10.37.3.28:18080 是可以访问到我的前端资源的

但是我代理的后端一直接口404

f12查看了一下接口地址 是:10.37.3.28:18080/prod-api/code

代理地址也没错,为啥一直不生效呢,查看nginx日志它是一直再找这个nginx /prod-api 文件下的静态目录

经过了无数次琢磨终于知道了问题.

配置文件listen是监听的nginx容器内部的接口,所以启动命令映射端口应该是: -p 18080:18080

之前误以为listen写的是映射的端口,所以导致一直代理的地址404

反复修改location模块一直无效,原来坑在这!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值