nginx反向代理配置去除前缀案例教程


Posted in Servers onJuly 26, 2021

使用nginx做反向代理的时候,可以简单的直接把请求原封不动的转发给下一个服务。设置proxy_pass请求只会替换域名,如果要根据不同的url后缀来访问不同的服务,则需要通过如下方法:

方法一:加"/"

server {
    listen              8000;
    server_name         abc.com;
    access_log  "pipe:rollback /data/log/nginx/access.log interval=1d baknum=7 maxsize=1G"  main;

    location ^~/user/ {
        proxy_set_header Host $host;
        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://user/;
    }

    location ^~/order/ {
        proxy_set_header Host $host;
        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://order/;
    }
}

^~/user/表示匹配前缀是user的请求,proxy_pass的结尾有/, 则会把/user/*后面的路径直接拼接到后面,即移除user。

方法二:rewrite

upstream user {
  server localhost:8089 weight=5;
}
upstream order {
  server localhost:8090 weight=5;
}

server {
    listen              80;
    server_name  abc.com;
    access_log  "pipe:rollback /data/log/nginx/access.log interval=1d baknum=7 maxsize=1G"  main;

    location ^~/user/ {
        proxy_set_header Host $host;
        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;

        rewrite ^/user/(.*)$ /$1 break;
        proxy_pass http://user;
    }

    location ^~/order/ {
        proxy_set_header Host $host;
        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;

        rewrite ^/order/(.*)$ /$1 break;
        proxy_pass http://order;
    }
}

proxy_pass结尾没有/, rewrite重写了url。

到此这篇关于nginx反向代理配置去除前缀案例教程的文章就介绍到这了,更多相关nginx反向代理配置去除前缀内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
nginx对http请求处理的各个阶段详析
Mar 31 Servers
Windows下使用Nginx+Tomcat做负载均衡的完整步骤
Mar 31 Servers
教你快速开启Apache SkyWalking的自监控
Apr 25 Servers
详解nginx进程锁的实现
Jun 14 Servers
Apache Pulsar集群搭建部署详细过程
Feb 12 Servers
微信告警的zabbix监控系统 监控整个NGINX集群
Apr 18 Servers
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
Apr 29 Servers
基于docker安装zabbix的详细教程
Jun 05 Servers
windows server2008 开启端口的实现方法
Jun 25 Servers
nginx之queue的具体使用
Jun 28 Servers
Tomcat安装使用及部署Web项目的3种方法汇总
Aug 14 Servers
CentOS7设置ssh服务以及端口修改方式
Dec 24 Servers
nginx结合openssl实现https的方法
nginx配置虚拟主机的详细步骤
nginx的zabbix 5.0安装部署的方法步骤
nginx请求限制配置方法
使用goaccess分析nginx日志的详细方法
Jul 09 #Servers
nginx作grpc的反向代理踩坑总结
使用 Apache Superset 可视化 ClickHouse 数据的两种方法
You might like
成本8450万,票房仅2亿,口碑两极分化,又一部DC电影扑街了
2020/04/09 欧美动漫
谈谈PHP语法(5)
2006/10/09 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
简单的php数据库操作类代码(增,删,改,查)
2013/04/08 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
浅谈PHP的反射机制
2016/12/15 PHP
JavaScript对象模型-执行模型
2008/04/28 Javascript
用jQuery扩展自写的 UI导航
2010/01/13 Javascript
javascript 多浏览器 事件大全
2010/03/23 Javascript
JQuery在光标位置插入内容的实现代码
2010/06/18 Javascript
js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
2016/09/09 Javascript
详解Vue如何支持JSX语法
2017/11/10 Javascript
vue渲染时闪烁{{}}的问题及解决方法
2018/03/28 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
深入理解JavaScript和TypeScript中的class
2018/04/22 Javascript
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
JS数组Object.keys()方法的使用示例
2019/06/05 Javascript
Layui Form 自定义验证的实例代码
2019/09/14 Javascript
Vue实现图片与文字混输效果
2019/12/04 Javascript
如何使用three.js 制作一个三维的推箱子游戏
2020/07/29 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
python里将list中元素依次向前移动一位
2014/09/12 Python
Python中的fileinput模块的简单实用示例
2015/07/09 Python
Python简单的制作图片验证码实例
2017/05/31 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
python寻找list中最大值、最小值并返回其所在位置的方法
2018/06/27 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
python中的逆序遍历实例
2019/12/25 Python
python lambda函数及三个常用的高阶函数
2020/02/05 Python
2014年圣诞节倒计时网页的制作过程
2014/12/05 HTML / CSS
圣彼得堡鲜花配送:Semicvetic
2020/09/15 全球购物
幼儿园毕业教师感言
2014/02/21 职场文书
开会通知
2015/04/20 职场文书
2015年党风建设工作总结
2015/04/29 职场文书
庆祝教师节主题班会
2015/08/17 职场文书
MySQL导致索引失效的几种情况
2022/06/25 MySQL