Nginx实际案例 重定向rewrite+反向代理proxy_pass

该博客介绍了如何配置Nginx以实现反向代理,将请求从`nginxIP:端口/aaa/bbb`转发到`HOST2:端口/bbb`,以及将`nginxIP:端口/aaa`转发到`HOST1:端口`,同时支持WebSocket连接。配置文件中包含了关键的`proxy_pass`指令和WebSocket所需的相关头部设置。
摘要由CSDN通过智能技术生成

一、背景

  要求访问路径:

   nginxIP:端口/aaa/           >>>反向代理到>>>            HOST1:端口/aaa

   nginxIP:端口/aaa/bbb     >>>反向代理到>>>            HOST2:端口/bbb

并且需要nginx支持websocket

二、配置文件

    server {
    # 监听端口8900即当访问服务器的端口是8900时,进入这个server块处理
    listen  8900;
    # server_name当配置了listen时不起作用        
    server_name  localhost;


    # location后面代表访问路径 当是/aaa/bbb请求时,代理到相应服务
    location /aaa/bbb {
    # rewrite重定向,将/aaa/bbb/***访问路径重定向为/bbb/***          
                rewrite ^/aaa/bbb/(.*)$ /bbb/$1 break ;
    # 使用 proxy_pass(固定写法)后面跟要代理服务器地址            
                proxy_pass http://${后端服务1 IP}:${端口};
    # 以下四条用来支持websocket
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header Host $host;
            }

    location /aaa {
    # 使用 proxy_pass(固定写法)后面跟要代理服务器地址            
                proxy_pass http://${后端服务2 IP}:${端口};
            }
    # 以下四条用来自持websocket
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header Host $host;
    }

三、操作流程

./nginx -s reload

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值