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 location中多个if里面proxy_pass的方法
Mar 31 Servers
Nginx搭建rtmp直播服务器实现代码
Mar 31 Servers
nginx反向代理配置去除前缀案例教程
Jul 26 Servers
Nginx配置https的实现
Nov 27 Servers
详解nginx安装过程并代理下载服务器文件
Feb 12 Servers
使用Docker容器部署rocketmq单机的全过程
Apr 03 Servers
nginx.conf配置文件结构小结
Apr 08 Servers
CentOS7环境下MySQL8常用命令小结
Jun 10 Servers
Docker与K8s关系介绍不会Docker也可以使用K8s
Jun 25 Servers
Linux中各个目录的作用与内容
Jun 28 Servers
TaiShan 200服务器安装Ubuntu 18.04的图文教程
Jun 28 Servers
Nginx使用ngx_http_upstream_module实现负载均衡功能示例
Aug 05 Servers
nginx结合openssl实现https的方法
nginx配置虚拟主机的详细步骤
nginx的zabbix 5.0安装部署的方法步骤
nginx请求限制配置方法
使用goaccess分析nginx日志的详细方法
Jul 09 #Servers
nginx作grpc的反向代理踩坑总结
使用 Apache Superset 可视化 ClickHouse 数据的两种方法
You might like
一个程序下载的管理程序(二)
2006/10/09 PHP
解析php如何将日志写进syslog
2013/06/28 PHP
PHP实现的mongoDB数据库操作类完整实例
2018/04/10 PHP
你真的了解JavaScript吗?
2007/02/24 Javascript
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
Extjs4 GridPanel的主要配置参数详细介绍
2013/04/18 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
JavaScript显示当前文档最后修改日期的方法
2015/03/19 Javascript
jQuery实现的简单提示信息插件
2015/12/08 Javascript
JS实现间歇滚动的运动效果实例
2016/12/22 Javascript
详解vue-cli开发环境跨域问题解决方案
2017/06/06 Javascript
vue中各组件之间传递数据的方法示例
2017/07/27 Javascript
简单实现vue验证码60秒倒计时功能
2017/10/11 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
2018/07/26 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
详解JavaScript原生封装ajax请求和Jquery中的ajax请求
2019/02/14 jQuery
layui输入框只允许输入中文且判断长度的例子
2019/09/18 Javascript
微信内置浏览器图片查看器的代码实例
2019/10/08 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
Vue watch响应数据实现方法解析
2020/07/10 Javascript
PyQt5利用QPainter绘制各种图形的实例
2017/10/19 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
2020/02/10 Python
关于keras中keras.layers.merge的用法说明
2020/05/23 Python
Selenium自动化测试工具使用方法汇总
2020/06/12 Python
关于Python错误重试方法总结
2021/01/03 Python
python 实现图片裁剪小工具
2021/02/02 Python
退伍老兵事迹材料
2014/01/31 职场文书
腾讯广告词
2014/03/19 职场文书
伊琍体标语
2014/06/25 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
python自然语言处理之字典树知识总结
2021/04/25 Python
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android