V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xu33
V2EX  ›  Node.js

Nginx 反向代理路径问题求助

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

    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
    yesq
        1
    yesq  
       2017-07-11 17:09:18 +08:00 via iPhone   ❤️ 1
    location /aaa/bbb/ {
    proxy_pass http://x.x.x:3333/;
    }
    xiaoz
        2
    xiaoz  
       2017-07-11 17:21:18 +08:00
    1 楼终结
    xu33
        3
    xu33  
    OP
       2017-07-11 17:26:49 +08:00
    666
    justfly
        4
    justfly  
       2017-07-11 17:31:53 +08:00
    一楼终结不了吧 转发过去之后 /aaa/bbb 是不保留的 这种需要 rewrite 的
    coolyujiyu
        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
    litter123
        6
    litter123  
       2017-07-11 18:05:49 +08:00
    用 root 命令
    suconghou
        7
    suconghou  
       2017-07-11 19:49:40 +08:00 via Android
    1 楼终结 注意 proxy_pass 域名后面加不加 / 是完全不一样的效果
    Lax
        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 跳转。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3354 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 11:50 · PVG 19:50 · LAX 04:50 · JFK 07:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.