首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Node.js
Express
PPA for Ubuntu
ppa:chris-lea/node.js
V2EX  ›  Node.js

Nginx 反向代理路径问题求助

  •  
  •   xu33 · 2017-07-11 17:04:37 +08:00 · 3591 次点击
    这是一个创建于 825 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Nginx 为 node 服务做反向代理

    希望通过访问域名下的 /aaa/bbb 路径时 路由到某个 node 服务下面

    加入 node 服务的地址是 x.x.x.x:3333

    希望访问 aaa/bbb 时 打开 x.x.x.x:3333

    访问 aaa/bbb/ccc 时 打开 x.x.x.x:3333/ccc

    这种可能通过一个 proxy 配置完成吗 还是必须写多个不同的

    8 回复  |  直到 2017-07-11 20:16:45 +08:00
        1
    yesq   2017-07-11 17:09:18 +08:00 via iPhone   ♥ 1
    location /aaa/bbb/ {
    proxy_pass http://x.x.x:3333/;
    }
        2
    xiaoz   2017-07-11 17:21:18 +08:00
    1 楼终结
        3
    xu33   2017-07-11 17:26:49 +08:00
    666
        4
    justfly   2017-07-11 17:31:53 +08:00
    一楼终结不了吧 转发过去之后 /aaa/bbb 是不保留的 这种需要 rewrite 的
        5
    coolyujiyu   2017-07-11 17:54:44 +08:00
    1 楼的会变成 http://x.x.x:3333/aaa/bbb/ccc,而不是 http://x.x.x:3333/ccc
        6
    litter123   2017-07-11 18:05:49 +08:00
    用 root 命令
        7
    suconghou   2017-07-11 19:49:40 +08:00 via Android
    1 楼终结 注意 proxy_pass 域名后面加不加 / 是完全不一样的效果
        8
    Lax   2017-07-11 20:16:45 +08:00
    1 楼没啥大毛病
    ```
    server {
    listen 8888;

    location / {
    return 200 $request_uri;
    }
    }

    server {
    listen 9999;

    location /aaa/bbb/ {
    proxy_pass http://127.0.0.1:8888/ ;
    }
    }
    ```

    直接访问 /aaa/bbb 会有多一次到 /aaa/bbb/ 的 301 跳转。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3162 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 33ms · UTC 10:48 · PVG 18:48 · LAX 03:48 · JFK 06:48
    ♥ Do have faith in what you're doing.