Nginx子路径到端口映射

有时候需要使用nginx来将子路径映射到某个特殊端口上,例如下面的场景。


nginx所在服务器的域名为www.service.com,监听在443端口,SSL已经打开。

此服务器上还有一个https服务名为test,运行在444端口上。这时候需要将发到https://www.service.com/test 的请求,全部转发到https://www.service.com:444/ 上。


看下面的nginx配置

test.conf


server{
        listen 443 default_server;
        server_name www.service.com;


        ssl  on;
        ssl_certificate  /opt/nginx/conf.d/server.crt;
        ssl_certificate_key  /opt/nginx/conf.d/server.key.unsecure;
        ssl_client_certificate /opt/nginx/conf.d/ca.crt;
        ssl_verify_client off;




        client_max_body_size 100m;


        location / {
                rewrite / https://www.service.com:443/test/ permanent;
                proxy_set_header   Host             $host:443;
                proxy_set_header   X-Real-IP        $remote_addr;
                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_set_header Via    "nginx";
        }


        location ^~/test/ {
                proxy_pass  https://www.service.com:444/;
                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_set_header Via    "nginx";
        }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值