nginx url转发的一种方式
比如,以前是 http://vampire.com/elasticsearch
现在要转到http://vampire.com/search
配置如下:
upstream localhost {server 127.0.0.1:8080 max_fails=7 fail_timeout=7s;server 127.0.0.1:8081 max_fails=7 fail_timeout=7s;
}
server {listen 81;server_name localhost;location / {root html;index index.html index.htm;proxy_pass http://localhost;rewrite /elasticsearch/(.*) /search/$1;#elasticsearch 转发到 sesarch}
}
rewrite /elasticsearch/(.*) /search/$1;
可以写在location外面,即:
server {listen 80; server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / { root html;index index.html index.htm;proxy_pass http://localhost;}rewrite /elasticsearch/(.*) /search/$1;#elasticsearch 转发到 sesarch
}
解释:
nginx 的 rewrite 语法
语法: rewrite regex replacement flag
默认: none
作用域: server, location, if
此指令根据表达式来更改URI,或修改字符串。
指令根据配置文件中的顺序来执行。
rewrite 正则表达式 替换值 标记
- 正则表达式 ,此处用于匹配url,此url为相对路径,即:如果你的访问路径是
http://www.vampire.com/elasticsearch/getAllUser?token=xxxxxxxx
,那么在此处的值就是:/elasticsearch/getAllUser?token=xxxxxxxx
。正则表达式中,一个括号内是一个值,这些值在“替换值”中可以使用 1 1~99使用,稍后介绍。 - 替换值 即用此值替换正则表达式匹配的值。此处可以使用相对路径或者绝对路径,即可以写
http://www.vampire.com/search/
,也可以写/search/
。 - 标记 break,last,redirect,permanent 有四个值,见文:Nginx中的rewrite指令(break,last,redirect,permanent)
- 当在正则表达式中使用
/elasticsearch/(.*)
后,在替换值中,使用$1
可以访问到(.*)
中匹配到的值
- 正则表达式 ,此处用于匹配url,此url为相对路径,即:如果你的访问路径是
它可以在server location 和 if 语句三个位置使用,使用方法相同
- if 语句的使用方法,应该是nginx rewrite使用的精髓,也是最复杂的,这里没用到,就先不介绍了。
nginx url转发的一种方式相关推荐
- php解析url并得到url中的参数及获取url参数的四种方式
本文给大家介绍php解析url并得到url中的参数及获取url参数的四种方式,涉及到将字符串参数变为数组,将参数变为字符串的相关知识,本文代码简单易懂,感兴趣的朋友一起看看吧 下面一段代码是php解析 ...
- url去重的几种方式
一.url去重的几种方式 1.使用 Java 的 Set 集合判重 Set 集合天生具备不可重复性,使用它只能存储值不相同的元素,如果值相同添加就会失败,因此我们可以通过添加 Set 集合时的结果来判 ...
- nginx负载均衡的五种方式
文章目录 前言 :负载均衡是什么 一.方式1:轮询 二.方式2:权重 方式3:iphash 方式4:最小连接 方式5:fair 总结:根据这几种方式可以猜测处nginx的底层使用了计数器,从而可以将海 ...
- Nginx配置虚拟主机三种方式
Nginx 配置虚拟主机,总共有三种方式,基于多IP,基于多端口,基于多域名,其中基于多域名是企业中最常用的一种方式,基于多端口的方式,主要用于本机配置项目. nginx参数详解 基于多IP的方式 [ ...
- url 参数传递的两种方式_Java项目实践,支付功能实现方式,第三方支付与银行接口支付...
1.第三方支付 B2C电商的支付,一般由于支付金额比较小,支付比较频繁,所以一般采用第三方支付,常用的第三方支付有:支付宝.微信等. 他们的原理都差不多,都是在点击支付时,直接调用第三方支付接口,传入 ...
- Nginx负载均衡的4种方式 :轮询-Round Robin 、Ip地址-ip_hash、最少连接-least_conn、加权-weight=n
负载均衡的概念: Load Balance负载均衡是用于解决一台机器(一个进程)无法解决所有请求而产生的一种算法. 我们知道单台服务器的性能是有上限的,当流量很大时,就需要使用多台服务器来共同提供服务 ...
- php获取url传递的参数,php解析url并得到url中的参数及获取url参数的四种方式
下面一段代码是php解析url并得到url中的参数,代码如下所示:<?php $url = "http://www.baidu.com/index.php?m=content& ...
- URL重写有几种方式
1).通过 HttpContext 类的 RewriteUrl() 方法来执行 URL 重写; 2).通过自定义HTTP Module或 HTTP Handler来重写 URL: 3).借助正则表达式 ...
- yy神曲url解析php_php解析url并得到url中的参数及获取url参数的四种方式
下面一段代码是php解析url并得到url中的参数,代码如下所示: $url = 'http://www.baidu.com/index.php?m=content&c=index&a ...
最新文章
- Uploadify在asp.net下使用Demo
- python与shell校验IP地址合法性
- Go 2. 两数相加
- P5445-[APIO2019]路灯【set,树状数组套线段树】
- 动手学CV-目标检测入门教程:基本概念
- java web怎么快速设计网页_Javaweb毕业设计快速开发指南(一)
- tfs sql查询_TFS安装中SQL Server课程
- 整理了4个B端产品调研网站,不花一分钱获得最全面的产品体验
- magento 物流问题
- php 图片底色替换,手把手教你替换相片中的颜色(给相片换底色)
- matlab中变量的命名规则
- 前端class的中括号用法
- 常用的Web前端开发框架有哪些呢?分享这11个
- 基于单片机的八层电梯设计
- Nginx报错 nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“
- AutoCAD安装失败
- sorted函数python_sorted函数
- 解决问题(七)——jsf+spring+hibernate整合(一)
- calsite原理_Calcite 处理一条SQL - II (Rels Into Planner)
- 微信小程序开发实战(9):单行输入和多行输入组件
热门文章
- 数值分析类智力题(IT产品类笔面试题型真题分析)
- 一个有趣的网站,开发同事要看的577个网站,小牛导航(super-nb)一站给聚合了
- Jetson 系列——基于yolov5对火源或者烟雾的检测,使用tensorrt、c++和int8加速
- 图片处理:将JPEG格式批量修改为JPG格式
- 元宇宙游戏开发公司 区块链传奇游戏开发
- 易观千帆 | 2022年10月银行APP月活跃用户规模盘点
- 利用动态规划解决实际问题之多次兑换获取最大外汇收益
- Advanced Installer 19.3
- 2022安徽最新八大员之(安全员)模拟考试试题及答案
- 关于python中urllib.urlencode的时候出错:UnicodeEncodeError: ‘ascii’的记录