Nginx Rewrite 详解

Nginx Rewrite 详解


一、Rewrite基本介绍

1.什么是Rewrite

Rewrite及URL重写,主要是实现地址重写,以及重定向,就是把输入Web的请求重定向到其他URL的过程

2.Rewrite应用场景
  • 地址跳转: 用户访问old.com时,将其跳转到oldboy.com。
  • 协议跳转:将用户通过http的请求协议重新跳转至https协议(实现https主要手段)。
  • URL静态化: 将动态URL地址显示为静态URL的一种技术,能提高搜索引擎抓取,并且能减少动态URL对外暴露过多的参数。
3.Rewrite原理

1

4.Rewrite语法格式
语法:
rewrite <regex> <replacement> [flag];

- regex :表示正则匹配规则。
- replacement :表示跳转后的内容。
- flag :表示 rewrite 支持的 flag 标记。

例1:
rewrite ^/images/(.*\.jpg)$ /imgs/$1 break;   //此处的$1用于引用(.*.jpg)匹配到的内容

例2:
rewrite ^/bbs/(.*)$ http://www.idfsoft.com/index.html redirect;

如上例所示,replacement可以是某个路径,也可以是某个URL
5.flag标记说明
flag 作用
last 基本上都用这个flag,表示当前的匹配结束,继续下一个匹配,最多匹配10个到20个 一旦此rewrite规则重写完成后,就不再被后面其它的rewrite规则进行处理 而是由UserAgent重新对重写后的URL再一次发起请求,并从头开始执行类似的过程
break 中止Rewrite,不再继续匹配 一旦此rewrite规则重写完成后,由UserAgent对新的URL重新发起请求, 且不再会被当前location内的任何rewrite规则所检查
redirect 以临时重定向的HTTP状态302返回新的URL
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值