nginx的rewrite
nginx服务的rewrite
nginx后端服务的指令
1)upstream指令 :设置后端服务器组的主要指令
Upstream name {}
2)server指令:用于设定组内的服务器
3)Ip_hash指令:
该指令用于实现会话保持功能,将某个客户端段请求多次重定向到组内同一台服务器上,保证客户端与服务器之间建立稳定的会话,只有当该服务器处于无效的时候,客户端的请求才会被下一个服务器接收
例子:
upstream backend {
ip_hash
server server1.example.com
server server2.example.com
}
rewrite重写
Rewrite 主要的功能就是实现URL的重写,Nginx的Rewrite规则采用Pcre,perl兼容正则表达式的语法规则匹配,如果需要Nginx的Rewrite功能,在编译Nginx之前,需要编译安装PCRE库。
通过Rewrite规则,可以实现规范的URL、根据变量来做URL转向及选择配置。
1)地址转发和地址重写
地址转发后,客户端浏览器的地址显示是不变的,而地址重写后客户端浏览器地址栏的地址会转变为服务器确定的位置;
在一次地址转发的过程中,只产生一次网络请求,而地址转写的过程中一般会产生两次请求;
2)rewrire指令
该指令通过正则表达式的使用用来改变URI。可以同时存在一个或者多个指令,按顺序依次对URL进行匹配和处理
例子: rewrite myweb,com http://neweb.com/premanent
3)rewrite的使用
域名跳转
例1:
server
{
listen 80;
server_name jump.myweb.com
rewrite ^/ http://jump.myweb.info/;
}
客户端访问http://jump.myweb.name时URL将被nginx服务器重写为http://jump.myweb.info/,客户端得到的数据实际上也是有http://jump:myweb.info相应的
例2)
server {
listen 80
server_name jump.myweb.com jump.myweb.info;
if ($host ~ myweb\.info) ##正则表达式中的.要用\转义
{
rewrite ^(.*) http://jump.myweb.name$1 permanent;#多级域名跳转
}
客户端访问http://jump.myweb.info/reqsoure的时候。URL被重写为http://jump.myweb.name/reqsource,客户端的数据实际上由http://jump.myweb.name响应的。
例3)
server {
listen 80
server_name jump1.myweb.com
if ($http_host ~* ^(.*)\.myweb\.name$)
{
rewrite ^(.*) http://jump.myweb.name$1
break
}
}
客户端访问http://jump.myweb.name/reqsource时,URL将被重写http:/jump.myweb.name/reqsource,实现了三级域名跳转
nginx的rewrite的更多相关文章
- nginx 配置rewrite 笔记
nginx 配置rewrite笔记: 通过下面的示例来说明一下,1. 先说说location : location 表示匹配传入的url地址,其中配置符有多种,各种情况的意义不一样: location ...
- Nginx重定向[Rewrite]配置 for wordpress & Discuz
首先Apache的Rewite规则差别不是很大,但是Nginx的Rewrite规则比Apache的简单灵活多了Nginx可以用if进行条件匹配,语法规则类似Cif ($http_user_agent ...
- 使用nginx的rewrite实现代理指定文件夹命令方法
使用nginx的rewrite实现代理指定文件夹命令方法 使用nginx代理Tomcat,Tomcat公布web的时候通常都是带着项目名称的. 比方项目名称为"aven".那么公布 ...
- Nginx的Rewrite规则与实例
通过Rewrite规则可以实现规范的URL.根据变量来做URL转向及选择配置,用好Rewrite有时起到事半功倍的效果. 语法 Nginx的Rewrite相比Apache的要好理解很多,主要使用指令有 ...
- nginx 带? rewrite 规则
由于需要重定向 url ,nginx需要rewrite .参考文献 http://huangqiqing123.iteye.com/blog/2083434 需求:将http://10.106.1.3 ...
- Nginx的rewrite应用
Rewrite主要的功能是实现URL重写,Nginx 的 Rewrite 规则采用 PCRE Perl 兼容正则表达式的语法进行规则匹配,如相使用 Nginx 的 Rewrite 功能,在编译 Ngi ...
- Nginx使用rewrite重新定向
[Rewrite重定向]Nginx使用rewrite重新定向 使用nginx做重新定向. nginx参考网址:http://blog.sina.com.cn/s/blog_97688f8e0100 ...
- php ci nginx 伪静态rewrite配置方法
php ci nginx 伪静态rewrite配置方法 location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$ ...
- Apache和Nginx的Rewrite规则对比
一.Apache的rewrite 1.Rewrite规则简介: Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言.可基于服务器级的(httpd.conf)和目录级的(.h ...
- Nginx的Rewrite正则表达式,匹配非某单词
Nginx的Rewrite正则表达式,匹配非某单词 由于要rewrite一个地址从 /mag/xx/xxx/ -> /m/xxx 但原先 /mag/xx/more/ 要保留 这就得写一个比较奇特 ...
随机推荐
- flutter block回调
block回调在oc中很常见,到了flutter中仍然有block回调 自定义一个StatefulWidget PageTitle 无参数回调VoidCallback VoidCallback onT ...
- wpf的控件style
前段时间一直在做wpf的UI开发,每次想做些控件style定制的时候都很头疼 很多控件不知道他的controltemplate是什么样的 为了方便大家写style 特别奉上wpf的style大全 从此 ...
- Linux下面配置安装jmeter(1)
一.下载安装JDK Jmeter依赖jdk环境,我们先准备jdk,查看是否安装jdk: # rpm -qa | grep jdk 或者 #Java –version 我本地已准备好了jdk ...
- apache禁止php解析--安全
#禁止解析php <Directory "/data/www/data/"> php_admin_flag engine off <filesmatch &quo ...
- 如何在linux下安装idea
[通过官方安装包安装] 在 http://www.jetbrains.com/ 官网下载对应版本. ultimate 旗舰版 community 社区版 然后解压到本地对应目录,打开idea目录下的b ...
- excel常用公式--时间序列类
year,month,day:返回对应于某个日期的年月日.Year作为1900 - 9999之间的整数返回. weekday:返回对应于某个日期的一周中的第几天. WEEKNUM:返回特定日期的周数. ...
- python 爬取网页内的代理服务器列表(需调整优化)
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2017-08-30 20:38:23 # @Author : EnderZhou (z ...
- CDH管理节点扩容磁盘步骤
把4个节点加12G内存,把hive的heap调到6G,按group重启服务让配置生效 注: 停服务前在yarn的application webui查flink的application id yarn ...
- Spring Cloud Zuul Filter 和熔断
转一篇很不错的关于Spring Cloud Zuul 相关用法的文章,基本包含常用的一些场景,另外附上实际项目中的熔断.打印请求日志和登录验证的实例. 原文地址:https://www.cnblogs ...
- 更新到.netcore3.0后找不到dotnet-ef的解决办法
在项目根目录下建立global.json文件 { "sdk": { "version": "2.2.402" } } 或使用命令 dotne ...