美文网首页
Nginx反向代理的路径问题

Nginx反向代理的路径问题

作者: 子达如何 | 来源:发表于2016-02-23 13:57 被阅读2982次

Node.js的一个二维码生成的服务接口运行在本机http://localhost:3000/qrcode?text=abc
一开始Nginx的反向代理配置如下:

    location /myapi {
        proxy_pass http://localhost:3000/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection ‘upgrade’;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

那么访问http://www.domain.com/myapi/qrcode?text=abc的时候
Node.js拿到的访问路径是//qrcode?text=abc


如果proxy_pass http://localhost:3000/;改成proxy_pass http://localhost:3000;
那么Node.js拿到的访问路径又变成了:/myapi/qrcode?text=abc
反正,怎么都不对。
最后突然发现应该是这样子:

    location /myapi**/** {
        proxy_pass http://localhost:3000/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection ‘upgrade’;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

相关文章

网友评论

      本文标题:Nginx反向代理的路径问题

      本文链接:https://www.haomeiwen.com/subject/womjkttx.html